Disabled các element của div bằng Jquery ?
Chào mọi người mình có 1 câu hỏi mong mọi người giải đáp, mình đã google nhưng chưa thành công Mình đang có 1 div XXX gồm 1 số input text + checkbox. Bây giờ mình muốn tạo thêm 1 checkbox để khi checked thì các input kia sẽ không thể thao tác được. Mình đã thử 1 vài cách :
- attr('disabled', true) cho tất cả các input đó -> tuy nhiên nó bị mất value nên lúc nhận request bị lỗi validate params trong PHP ( có thể chỉnh lại php nhưng chắc sẽ chỉ làm khi ko thể xử lý đc = jquery :v ).
$("#" + idParent + " :input").not("[data=" + id + "]").attr("disabled", true);
- addClass('disabled') -> cái này ko disabled được checkbox.
$("#" + idParent + " :input").not("[data=" + id + "]").addClass("disabled");
- addClass('disabled') cho cái div XXX đó -> nút kia nằm trong div nên cũng disabled theo, ko enabled đc nữa =))
$("#" + idParent).addClass('disabled');
- tạo 1 div màu transparent che phủ toàn bộ cái div to XXX -> cái này chưa biết làm.
Mong anh em cho mình xin 1 giải pháp, cảm ơn nhiều
1 CÂU TRẢ LỜI
Bạn thay thế thuộc tính disabled
bằng readonly
đi. Hai cái này đều không cho người dùng thao tác lên, chỉ khác nhau 1 điểm là disabled không gửi qua submit form, còn readonly thì vẫn gửi dữ liệu qua form.
@manhqtb Bạn nên dùng readonly
thay cho disabled
như bạn Tài trả lời. Ngoài ra, dù bạn có validate bằng javascript hay không thì trên server bạn cần phải thực hiện validate lại để đảm bảo an toàn bảo mật cho server trước khi lưu vào cơ sở dữ liệu nhé. Người dùng có thể bóc tách api của bạn ra khỏi web và thực hiện lưu dữ liệu mà.
Cảm ơn @dinh.van.tai và @huukimit nhé, mình đã làm được ^^