Это довольно просто в простом JavaScript и будет эффективно работать во всех браузерах, которые поддерживают ввод формы только для чтения (что почти во всех браузерах, выпущенных за последнее десятилетие):
var form = document.getElementById("your_form_id");
var elements = form.elements;
for (var i = 0, len = elements.length; i < len; ++i) {
elements[i].readOnly = true;
}
Этот никогда не приводил меня к сбою, и я не видел этот подход к другим ответам.
//disable inputs
$.each($("#yourForm").find("input, button, textarea, select"), function(index, value) {
$(value).prop("disabled",true);
});
Вы можете использовать селектор : input
и сделать следующее:
$("#myForm :input").prop('readonly', true);
: input
выбирает все элементы
,
,
и
. Также атрибут только для чтения
, если вы используете disabled
для элементов, они не будут отправлены на сервер, поэтому выберите, какое свойство вы хотите на основе этого.
$("#formid input, #formid select").attr('disabled',true);
или сделать его доступным только для чтения:
$("#formid input, #formid select").attr('readonly',true);