Resident Details
×
Resident ID:
First Name:
Middle Name:
Last Name:
Birthdate:
Age:
Email:
Addresses
Contacts
Modify Information
resident.js
document.addEventListener('DOMContentLoaded', function () {
var modifyCheckbox = document.getElementById('modifyCheckbox');
var inputsToModify = document.querySelectorAll('input:not([type="checkbox"]), select, #modalAddresses input, #modalContacts input');
function toggleFieldsReadOnly() {
var isReadOnly = !modifyCheckbox.checked;
inputsToModify.forEach(function (input) {
// Disable age field explicitly
if (input.id !== 'modalAge') {
input.readOnly = isReadOnly;
}
});
}
// Toggle fields on page load
toggleFieldsReadOnly();
// Toggle fields when checkbox state changes
modifyCheckbox.addEventListener('change', function () {
toggleFieldsReadOnly();
});
});
// Additional script to ensure dynamically generated inputs in addresses and contacts are handled
$(document).ready(function () {
$('#residentModal').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
var resident = button.data('resident');
$('.view-resident-btn').click(function () {
var residentData = $(this).data('resident');
// Set resident information
$('#modalResidentID').val(residentData.ResidentID);
$('#modalFirstName').val(residentData.FirstName);
$('#modalMiddleName').val(residentData.MiddleName);
$('#modalLastName').val(residentData.LastName);
$('#modalBirthdate').val(residentData.Birthdate);
$('#modalAge').val(residentData.Age);
$('#modalEmail').val(residentData.Email);
// Handle addresses
var addresses = residentData.Addresses || [];
var addressInputs = $('#modalAddresses');
addressInputs.empty(); // Clear previous address inputs
addresses.forEach(function (address, index) {
// Create input fields for each address
var addressInput = ''
addressInput += '';
addressInput += 'Address Type:';
addressInput += '';
addressInput += '';
addressInput += '';
addressInput += 'House Number:';
addressInput += '';
addressInput += '';
addressInput += '';
addressInput += 'Street:';
addressInput += '';
addressInput += '';
addressInput += '';
addressInput += 'Barangay:';
addressInput += '';
addressInput += '';
addressInput += '';
addressInputs.append(addressInput);
});
// Handle contacts
var contacts = residentData.Contacts || [];
var contactList = $('#modalContacts');
contactList.empty(); // Clear previous contact inputs
contacts.forEach(function (contact, index) {
// Create input fields for each contact
var contactInput = ''
contactInput += '';
contactInput += 'Contact Type:';
contactInput += '';
contactInput += '';
contactInput += '';
contactInput += 'Contact Number:';
contactInput += '';
contactInput += '';
contactInput += '';
contactList.append(contactInput);
});
// Update read-only status based on checkbox state
toggleFieldsReadOnly();
});
});
});
Я хочу добиться этого, когда резидент устанавливает флажок, чтобы изменить все детали. Моя проблема с этой единственной информацией о жителях меняется на не только для чтения, но адрес и контакт не изменились. Судя по приведенному скриншоту, только информация о жителях изменилась на красный, но контакты и адрес по-прежнему доступны только для чтения
document.addEventListener('DOMContentLoaded', function () { var modifyCheckbox = document.getElementById('modifyCheckbox'); var inputsToModify = document.querySelectorAll('input:not([type="checkbox"]), select, #modalAddresses input, #modalContacts input');
function toggleFieldsReadOnly() { var isReadOnly = !modifyCheckbox.checked; inputsToModify.forEach(function (input) { // Disable age field explicitly if (input.id !== 'modalAge') { input.readOnly = isReadOnly; } }); }
// Toggle fields on page load toggleFieldsReadOnly();
// Toggle fields when checkbox state changes modifyCheckbox.addEventListener('change', function () { toggleFieldsReadOnly(); }); });
// Additional script to ensure dynamically generated inputs in addresses and contacts are handled $(document).ready(function () { $('#residentModal').on('show.bs.modal', function (event) { var button = $(event.relatedTarget); var resident = button.data('resident');
$('.view-resident-btn').click(function () { var residentData = $(this).data('resident');
// Set resident information $('#modalResidentID').val(residentData.ResidentID); $('#modalFirstName').val(residentData.FirstName); $('#modalMiddleName').val(residentData.MiddleName); $('#modalLastName').val(residentData.LastName); $('#modalBirthdate').val(residentData.Birthdate); $('#modalAge').val(residentData.Age); $('#modalEmail').val(residentData.Email);
// Update read-only status based on checkbox state toggleFieldsReadOnly(); }); }); }); [/code] [img]https://i.sstatic.net/e81mGW2v.png[/img]
[img]https://i.sstatic.net/V0TS1jft.png[/img] Я хочу добиться этого, когда резидент устанавливает флажок, чтобы изменить все детали. Моя проблема с этой единственной информацией о жителях меняется на не только для чтения, но адрес и контакт не изменились. Судя по приведенному скриншоту, только информация о жителях изменилась на красный, но контакты и адрес по-прежнему доступны только для чтения