我有一個jQuery表單,它具有驗證排序的功能。它是一個數據輸入屏幕,上面有兩個文本框。每個文本框的朗讀值爲1到無窮大,但第一個控件的「期望」範圍爲36-84,第二個控件的範圍爲50-300。如果該值在期望範圍內,則提交將通過。如果範圍超出所需範圍,但在大聲範圍內,對於任一範圍說25,那麼在用戶按下提交之後需要提示用戶。如果他們對提示表示肯定,則提交通過,如果他們說不,則不會。jQuery驗證插件:提示覆蓋
感謝Cooper Maruyama的幫助,我已經到了試圖在ASP.Net世界中實際實現答案的地步。問題在於文本框ID在運行時被確定,並被傳遞給ID對象中的初始化函數。
當我運行它,我得到以下錯誤:無法獲得屬性的值「設置」:對象爲空或未定義
這裏是我的代碼:
var manageResidentWeightsJs = {
initialize: function (ids) {
var cbDeclined = $(ids.cbDeclined);
var cbIsOutOfFac = $(ids.cbIsOutOfFac);
$('<div id=errorSummary>The following values fall out side of the normal range:</div>')
.append('<ul id="errorsList"></ul>').hide().insertAfter(ids.formView);
var txtHeight = $(ids.txtHeight);
var txtWeight = $(ids.txtWeight);
function confirmation() {
var x;
var r = confirm("Are you sure?");
if (r == true) { return true; }
else { return false; }
}
$(ids.formView).validate({
invalidHandler: function (form, validator) {
if (confirmation()) { form.submit(); }
}
});
txtHeight.each(function (index, elem) { $(elem).rules("add", { min: 0 }) });
txtWeight.each(function (index, elem) { $(elem).rules("add", { min: 0 }) });
}
}
的跟着代碼被用來調用上面的代碼。在此代碼ASP.Net已經被替換爲「#」作爲從問題消除ASP.Net因素:)
$(document).ready(function() {
var ids = {
formView: '#mainForm',
txtHeight: '#heightCtrl',
txtWeight: '#weightCtrl'
};
manageResidentWeightsJs.initialize(ids);
});
我很抱歉,但它並沒有回答這個問題:(我會在我的例子來闡明上述 –
主要的問題我有。你的例子是它沒有使用jQuery驗證框架,我只是有一個想法:我可以連接到sumbit的onclick,獨立於在驗證後會被調用的驗證,說驗證可以提交?這樣,只有在系統確定該值爲al後,纔會檢查所需的值烏德琴。 –
已更新,請參閱新的答案 –