使用JQuery驗證驗證隱藏字段由於使用預輸入(設置上選擇隱藏字段)和rateit插件(在某些設置隱藏字段)jQuery驗證聚焦到隱藏字段無效
他們正在驗證罰款和我有錯誤信息顯示並正確清除。
問題是,如果其中一個字段是第一個無效字段,它不會因爲元素被隱藏而無法集中。
任何人都知道解決這個問題的方法?
感謝
使用JQuery驗證驗證隱藏字段由於使用預輸入(設置上選擇隱藏字段)和rateit插件(在某些設置隱藏字段)jQuery驗證聚焦到隱藏字段無效
他們正在驗證罰款和我有錯誤信息顯示並正確清除。
問題是,如果其中一個字段是第一個無效字段,它不會因爲元素被隱藏而無法集中。
任何人都知道解決這個問題的方法?
感謝
結束了這樣做,它運作良好。我添加的屬性我隱藏輸入
例:
<input name='whatever" class="required" focusID="ID_TO_FOCUSTO" value="">
然後添加到了驗證。如果它是可見的,它就像正常情況一樣專注於該元素。如果不是,則它將焦點集中到隱藏輸入上的屬性focusID的ID。
invalidHandler: function(form, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
if($(validator.errorList[0].element).is(":visible"))
{
$('html, body').animate({
scrollTop: $(validator.errorList[0].element).offset().top
}, 1000);
}
else
{
$('html, body').animate({
scrollTop: $("#" + $(validator.errorList[0].element).attr("focusID")).offset().top
}, 1000);
}
}
}
這樣做不錯,不要將無效屬性放入標記中,而是更喜歡滾動到附近的任何元素'.errorList [0] .element'。儘管如此,值得讚賞。 –
你可以做現場事先鍵入的內容自定義規則,驗證包含的id值隱藏字段。所以如果它是無效的,重點將放在前面的字段。
jQuery.validator.addMethod("myCustomValidate", function() {
//check if hidden field has a value
return $("#hiddenFieldId").value);
}, "You must be select a item");
$('validatorElement').validate({
ignore: "",
rules : {
typeaheadElement: { myCustomValidate: true }
}
});
呃...是的。我知道這是隱藏的,但它與如上所述的表單上顯示的實際字段有關。所以有一個地方需要重點驗證,但不知道它。 – Jason