если я сбрасываю кучу полей ввода: флажок с помощью resetAttr (), который работает отлично, я не могу перепроверить эти флажки, используя данные ajax-ответа в сочетании с .attr ('флажок', ' правда ').
Таким образом, рабочий процесс сценария должен быть таким:
Получить некоторые данные во время ajax-запроса. Если это успешно, продолжайте.
При открытии формы сбросьте все ее содержимое, включая флажки. Это не работает с
document.getElementById("ID").reset();
один.
Поэтому я использовал removeAttr();
Теперь возьмите данные ajax-запроса и поместите их в DOM, используя jQuery('#SomeID').find('input[value="'+SomeObject[key]+'"]').attr('checked','true');
Без использования remoteAttr () перед заполнением формы, как описано в шаге 3. Использование removeAttr () приводит к тому, что заполнение флажков будет игнорироваться.
Есть предложения?
С наилучшими пожеланиями
Ральф
ОБНОВЛЕНИЕ: я нашел решение, которое немного неприятно, но работает:
Сначала я удаляю отмеченные атрибуты с помощью:
jQuery('#form').find('input:checkbox').attr('checked',false);
А затем снова сбросьте форму, используя:
document.getElementById("such-sets-_viewSuchSets-form").reset();
После этого я заполняю форму отмеченными флажками, текстовыми полями и т. Д., Используя jQuery (). Val () и т. Д.