你能告訴我是否有人執行了一個自定義驗證器來檢查兩個(或N)輸入字段中的哪一個被填充?ASP.NET:「必須填寫兩個字段之一」的自定義客戶端驗證程序?
"Insert phone number or email address"
我使用ASP.NET(阿賈克斯)3.5,該ajaxToolkit:ValidatorCalloutExtender(和jQuery,如果有必要)。
你能告訴我是否有人執行了一個自定義驗證器來檢查兩個(或N)輸入字段中的哪一個被填充?ASP.NET:「必須填寫兩個字段之一」的自定義客戶端驗證程序?
"Insert phone number or email address"
我使用ASP.NET(阿賈克斯)3.5,該ajaxToolkit:ValidatorCalloutExtender(和jQuery,如果有必要)。
哦,當然,約10分鐘後,我發現這個代碼項目的文章Multiple Fields Validator - An ASP.NET Validation Control by Adam Tibi通過自己:
我不是一個在這裏推商用產品,但是當涉及到asp.net驗證你會做一個令人難以置信的傷害,不要看peterblum.com。最好的asp.net控制軟件包無... Hanselmans採取他們 -
「不是一個插件,而是一個完整的ASP.NET驗證框架重新想象。有一個學習曲線,但它會改變你寫網頁的方式,還可以看看他的Visual Security Security和Peter's DatePackage,他的文檔很有傳奇色彩。「
代碼項目也有這種控制(通過你的真正):
http://www.codeproject.com/KB/validation/AtLeastOneOfValidator.aspx
我只是做這個(需要的jQuery):
JS:
function validatePhoneOrEmail(source, args) {
if ($("[id$='txtEmail']").val() == "" && $("[id$='txtTel']").val() == "")
args.IsValid = false;
else
args.IsValid = true;
}
ASP.NET:
<asp:CustomValidator runat="server"
ClientValidationFunction="validatePhoneOrEmail"
ErrorMessage="Please enter a telephone number or email address">
</asp:CustomValidator>
我沒有y服務器端驗證,但我假設服務器中的類似功能將非常容易創建。
我把這個標記爲'不是答案',因爲沒有登錄到codeproject就看不到源代碼。 – ChrisW 2015-03-28 22:18:26
@ChrisW奇怪。我不是一個codeproject成員,但我沒有查看內容的問題。 (但是,我已經關閉了這個問題,因爲它是一個非現場推薦的集合。) – 2015-04-23 03:09:09