簡體   English   中英

結合asp.net服務器端控件驗證html輸入

[英]validating html input in combination with asp.net server side controls

<input id="TextBox1" name="nam"    type="text" tabindex="1" /> 
    <asp:TextBox ID="datepickereffective"  runat="server" />
        <asp:RequiredFieldValidator ID="RequiredFieldValidatorForDateEffective" 
          runat="server"  ControlToValidate="datepickereffective"  
                    ErrorMessage="Required"></asp:RequiredFieldValidator>
       <asp:Button ID="Button1" runat="server" Text="Submit"  OnClick="btnsubmit_onclick"/>

我想檢查html輸入中的null值。

嘗試過

Javascript onblur:dovalidation()
<script>
    do validation 
</script>

問題 :我想在不使用RUNAT=SERVER情況下驗證輸入文本,因為我使用的是jQuery自動完成功能,並且由於某種原因,如果我使用runat =“ server”,它就不會選擇數據。 另外,我的“提交”按鈕是服務器端事件,因為我正在從文本框中保存數據。 我什至不能為單擊按鈕編寫JavaScript函數。

我想要的是:是否有任何屬性可以迫使用戶定義地單擊html輸入,以便我可以在客戶端進行驗證。 因為帶有onblur的javascript邏輯僅在我單擊它並且不選擇任何內容時才起作用。 有指針嗎?

如果需要,可以在這種情況下使用CustomValidator。 這是示例代碼:

<input id="Text1" type="text" />
<asp:CustomValidator ID="CustomValidator1" runat="server" 
ErrorMessage="Cannot be empty" ValidationGroup="Html" ClientValidationFunction="dohtmlvalidation" Display="Dynamic"></asp:CustomValidator>

<asp:Button ID="Button3" runat="server" Text="Button" ValidationGroup="Html"/>

//JS function
function dohtmlvalidation(sender, args) {
            if ($("#Text1").val() == "") {
                args.IsValid = false;
            }
        }

演示 :檢查底部的“ HTML輸入驗證”部分(忽略其他測試控件)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM