私は JQuery Validate プラグインを使用しており、この方法で入力を検証しています。フォームを一度送信した後、入力が無効としてマークされました。
値が別のフィールド「to」にリンクされているフィールド「from」があります。「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);
});
});