验证控件失效的问题
前不久在aspx中放了個按鈕控件:
??????????????????????? <asp:Button ID="btnSend" runat="server" Text="發?送"
OnClientClick="return btnSend();" OnClick="btnSend_Click" />
然后又放了一個驗證控件(RequiredFieldValidator),突然發現在界面提交時,驗證控件失效了。
????????后來在看頁面源文件時才發現,當頁面有RequiredFieldValidator時,會對所有button加上CausesValidation="True"的屬性 ,這樣就會默認在提交時調用ASP.Net自帶的Page_ClientValidate()對控件進行驗證,但是我的button已經有一個OnClientClick事件,服務器則只執行一個事件,這樣就導致驗證控件的失效。
????????修改后代碼:
??????????????????????????? <asp:Button ID="btnSendB" runat="server"? Text="發? 送" OnClientClick="if(Page_ClientValidate()) {return btnSend();} else{return false;}" OnClick="btnSend_Click" />.
????????這樣兩個事件都能被執行。
??????????????????????? <asp:Button ID="btnSend" runat="server" Text="發?送"
OnClientClick="return btnSend();" OnClick="btnSend_Click" />
然后又放了一個驗證控件(RequiredFieldValidator),突然發現在界面提交時,驗證控件失效了。
????????后來在看頁面源文件時才發現,當頁面有RequiredFieldValidator時,會對所有button加上CausesValidation="True"的屬性 ,這樣就會默認在提交時調用ASP.Net自帶的Page_ClientValidate()對控件進行驗證,但是我的button已經有一個OnClientClick事件,服務器則只執行一個事件,這樣就導致驗證控件的失效。
????????修改后代碼:
??????????????????????????? <asp:Button ID="btnSendB" runat="server"? Text="發? 送" OnClientClick="if(Page_ClientValidate()) {return btnSend();} else{return false;}" OnClick="btnSend_Click" />.
????????這樣兩個事件都能被執行。
轉載于:https://www.cnblogs.com/Agger/archive/2008/07/14/1242695.html
總結
- 上一篇: [导入]袋鼠与笼子
- 下一篇: 你为何要带着我的爱远走