我正在使用JQuery Validate插件,并以此方式验证输入。一次提交表单后,输入被标记为无效。
有一个字段“from”,其值链接到另一个字段“to”。一旦更改了“来自”,如何获取“至”字段以进行重新验证?
HTML:
<div id="fromPanel" class="inputPanel">
<label>From</label>
<div class="invalid valid" generated="true" for="from"></div>
<select id="from" class="campusChooser valid" required="required" name="from">
<option value="" disabled="disabled"> -- Choose a Campus -- </option>
<option selected="selected" value="UTSG">St. George</option>
<option value="UTM">Mississauga</option>
</select>
</div>
<div id="toPanel" class="inputPanel">
<label>To</label>
<div class="invalid" generated="true" for="to"></div>
<select id="to" class="campusChooser" required="required" name="to">
<option value="" disabled="disabled"> -- Choose a Campus -- </option>
<option value="UTSG">St. George</option>
<option selected="selected" value="UTM">Mississauga</option>
</select>
</div>
JS:
$(function () {
$("#to").change(function() {
var otherField = field == "to" ? "from" : "to", otherValue;
if (value == "UTSG") {
otherValue = "UTM";
} else if (value == "UTM") {
otherValue = "UTSG";
} else {
otherValue = "";
}
$("#" + otherField).find("option[value='{0}']".format(otherValue)).prop("selected", true);
});
});
最佳答案
您可以使用the .valid()
method以编程方式触发验证测试。您可以将.valid()
附加到单个输入元素或整个表单。
$('#myform').valid();
要么
$('input[name="fieldName"]').valid();
调用
.valid()
将立即触发对所选元素的验证测试,并返回 bool(boolean) 值。(注意:在使用此方法检查之前,需要在表单上调用
validate()
。)另请:http://jqueryvalidation.org/valid/