我有一個asp.net webform上的三個文本框,我/我可以如何使用必需的字段驗證器,以確保其中至少有一個包含文本?asp.net必填字段驗證至少有一個文本框包含文本
回答
我會用這樣的CustomFieldValidator:
<asp:CustomValidator runat="server"
ID="MyCustomValidator"
ValidationGroup="YOUR_VALIDATION_GROUP_NAME"
OnServerValidate="MyCustomValidator_ServerValidate"
ErrorMessage="At least one textbox needs to be filled in." />
,然後在你的代碼隱藏您有:
protected void MyCustomValidator_ServerValidate(object source, ServerValidateEventArgs args)
{
if (/* one of three textboxes has text*/)
args.IsValid = true;
else
args.IsValid = false;
}
您還可以添加一個客戶端組件來此驗證,並使它通過使用AJAX工具包的ValidatorCalloutExtender控件進行擴展來實現性感。
我不喜歡這導致回發所以我剛剛結束了設置ClientIDMode =「靜態」和硬編碼JS函數中的值。我對做任何錯誤消息或任何事情都不感興趣;我只是想讓按鈕什麼都不做。感謝代碼。它完全工作,它只是使用CustomValidator是錯誤的選擇。這是我的錯,不是你的。 – Shawn 2010-10-13 04:01:31
我發現這不會觸發驗證與指定的ValidationGroup。一旦我拿出來,它就像一個魅力。 – techturtle 2013-06-07 19:09:19
我不認爲RequiredFieldValidator符合您的要求。我會去CustomValidator
分配給你的任何領域,並手動檢查他們所有的火災。
<script>
function doCustomValidate(source, args) {
args.IsValid = false;
if (document.getElementById('<% =TextBox1.ClientID %>').value.length > 0) {
args.IsValid = true;
}
if (document.getElementById('<% =TextBox2.ClientID %>').value.length > 0) {
args.IsValid = true;
}
if (document.getElementById('<% =TextBox3.ClientID %>').value.length > 0) {
args.IsValid = true;
}
}
</script>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:CustomValidator ID="CustomValidator1" runat="server"
ErrorMessage="have to fill at least 1 field"
ControlToValidate="TextBox1"
ClientValidationFunction="doCustomValidate"
ValidateEmptyText="true" ></asp:CustomValidator><br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br />
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br />
不要忘記設置ValidateEmptyText="true"
作爲默認是跳過空字段。確保你也創建了一個類似的服務器端驗證方法。
- 1. asp.net驗證文本框 - 至少一個文本框必須有數據
- 2. 必填字段沒有驗證我在asp.net中的文本框
- 3. 必填字段驗證器asp.net更改文本框的css
- 4. 至少有一個字段必須填寫,cakephp驗證
- 5. 驗證文本框時,另一個文本框包含文本
- 6. JSON文本必須至少包含兩個八位字節
- 7. 從3個必填字段驗證器中選擇至少一個複選框
- 8. jquery驗證(至少有一個字段有文字)
- 9. 文本框的必填字段驗證程序
- 10. 如何驗證淘汰賽js中至少有一個字段必須填寫
- 11. MVC客戶端驗證:必須填寫兩個文本框中的至少一個
- 12. 如何驗證以便至少需要1個字段,當第二個字段有兩個必填字段時
- 13. 檢查標籤文本並驗證與其綁定的輸入字段至少包含x個字符
- 14. 基因敲除驗證 - 至少有一個字段有一個值,至少有一個複選框檢查
- 15. asp.net-MVC文本框驗證
- 16. 驗證文本框ASP.NET
- 17. ASP.Net文本框驗證
- 18. asp.net驗證多文本框
- 19. asp.net多文本框驗證
- 20. 驗證一個必填字段
- 21. 煤層驗證問題 - 檢查至少一個填充字段
- 22. 驗證至少要填寫一個字段,重力形式
- 23. 驗證至少一個字段是以dhtmlx格式填充
- 24. 必填字段驗證程序asp.net
- 25. Asp.net必填字段驗證問題
- 26. C#Asp.net必填字段驗證程序
- 27. 至少有一個文本字段不爲空
- 28. 數字驗證一個HTML文本框
- 29. 驗證文本字段和複選框
- 30. 必填項檢查在asp.net文本框
可能重複的[asp.net驗證文本框 - 至少一個文本框必須有數據](http://stackoverflow.com/questions/1443545/asp-net-validate-textbox-at-least-one-文本框必須有數據輸入) – 2013-10-03 22:37:05