一般描述:
在我的表單中,我有一個需要遠程驗證的字段。在遠程調用中,我發送表單元素的值以及該元素可能依賴的其他表單元素的值(用於驗證服務器)。jQuery驗證遠程 - 驗證數據是否在字段中
遠程驗證在調用時效果很好。問題在於,只有在表單元素中存在值時纔會調用遠程驗證。根據發送給遠程驗證的參數,可能需要此表單元素或可能存在其他驗證問題。
如何強制在此字段上進行遠程驗證,無論它是否有數據?
具體方案:
得到了一個角色列表,以及一個業務員代碼文本輸入。
服務器端邏輯:(1)如果選擇銷售員角色,需要salespersoncode; (2)如果未選擇銷售員角色,salespersoncode必須爲空。
請注意,我確實有其他表單元素值發送給服務器,並且還有其他服務器端邏輯,我沒有在這裏簡單介紹,因爲它們不會增加此問題的價值,只會混淆視圖。
<select name="roles" id="roles" multiple="multiple" size="5"></select>
<input type="text" name="salespersoncode" id="salespersoncode" />
$("#add_user_form").validate({
rules: {
salespersoncode: {
remote: {
type: "post",
url: "/AdminJson/CheckSalespersonCode",
dataType: "json",
data: {
salespersoncode: function() { return $("#salespersoncode").val(); },
roles: function() { return $("#roles").val(); }
}
}
}
}
}
我不希望把在「需要」驗證選項,因爲在所有情況下不需要salespersoncode領域。
我再次提出問題:如何強制在salespersoncode字段上進行遠程驗證,以確定它是否包含數據?
在此先感謝
裏面的validate()函數,我沒有看到像你建議我如何創建一個局部變量。我已經更新了我的問題,以獲取更多驗證方法的詳細信息。你介意更新你的答案告訴我在哪裏我可以把本地變種沒有瀏覽器顯示JS錯誤? –
也許試試? –