0
我有一個select是自定義驗證器方法的目標。每當元素髮生變化時調用jQuery自定義驗證器方法
驗證:
var validator = $("#myform").validate({
rules : {
source: "source_selected",
},
messages : {
},
errorLabelContainer: $("#error_container ul"),
errorContainer: $("#error_container"),
wrapper : "li"
});
自定義的驗證方法:
$.validator.addMethod("source_selected", function(value, element) {
var source_id = $(element).selectedValues();
if(source_id == 0) {
return false;
}
return true;
}, "Please a select a source to Copy subscriptions from.");
選擇:
<select name="source" id="source">
<option value="0">-- Choose --</option>
<? foreach($managers as $id => $name) { ?>
<option value="<?=$id?>"><?=$name?></option>
<? } ?>
</select>
每次我更改選擇source_selected函數被調用的選項。如果我在那裏發出警報,每次點擊選擇框(類似於.blur),都會觸發警報。我希望只有在提交按鈕被調用時纔會調用它。
提交單擊事件:
$("#submit_button").click(function() {
var valid = validator.form();
if (valid) {
document.myform.submit();
}
});
任何想法是極大的讚賞。
這不是一個壞主意。我仍然很好奇爲什麼這是失敗的,因爲我使用這種模式到處都是。我的整個網站上大約有十個表單,這樣證實了這一點,這是唯一一個表現得很有趣的表單。 – akronymn