У меня есть div с полем формы и кнопкой, которую я хотел бы иметь петрушку, чтобы проверить все поля формы в этом div, которые имеют собственный атрибут data-validate
. Мне нужно, чтобы он работал независимо от того, сколько полей формы находится в div. Поэтому он должен работать с базами данных, текстовыми полями и полями выбора.Как проверить все поля формы в div с помощью parsley.js?
HTML:
<div id="parsley-div">
<div class="form-group">
<label for="city">City</label>
<input id="city-test" type="text" class="form-control" data-parsley-required data-parsley-required-message="Please enter a city name.">
</div>
<button class="btn btn-primary">Save Changes</button>
</div>
JS:
$('#parsley-div').find('button').click(function(){
$('#parsley-div').parsley().validate();
});
К сожалению, это не работает. Я заметил, что это работает, если есть тег формы вокруг полей формы, но мне нужно, чтобы это был div. Я создал JSFiddle, который показывает оба случая: https://jsfiddle.net/8rkxzjx1/2/
Как я могу использовать петлю для проверки всех полей формы с атрибутами data-parsley
в указанном div? Если возможно, отредактируйте JSFiddle, чтобы показать правильную реализацию. Спасибо.
Edit:
Я понял, что это работает, но он не чувствует себя очень эффективным:
$('#parsley-div').find("input, textarea, select").each(function (index, value) {
$(this).parsley().validate();
});
Ваше решение кажется единственным, которое работает для всех ожидаемых входов. Я все равно посмотрю на это. –
zeck, я обновил ответ. это то, что я придумал. Я не уверен, есть ли лучший способ достичь этого. –