服務端控制項驗證與自己寫的javascript驗證函式同時存在時出現的衝突問題(RequiredFieldValidator&JS)

來源:互聯網
上載者:User

我在一個web頁面裡用到了RegularExpressionValidator控制項驗證TextBox,然後我自己又編寫了一個js函數,讓button的click事件調用,結果出現了如下問題:
1、在TextBox輸入,單擊button時click事件可以觸發js函數驗證
2、在TextBox輸入時可以觸發RegularExpressionValidator驗證
3、但是當TextBox輸入明顯有錯時,單擊Button卻不能觸發RegularExpressionValidator驗證Page頁裡的控制項。

我的js函數如下:
function Check_value(frm)
{
 var Condate=frm.txtdate.value;
 Condate = Condate.replace(/-/g,"\/");
 var time0 = new Date(); 
 var time1 = new Date(Condate); 
 var date0=Date.parse(time0);
 var date1=Date.parse(time1);
 if(date1 > time0)
 {
  alert("最後接觸日期不能大於今天的日期。");
  return false;
 }
}
然後我在頁面載入時:
btnAdd.Attributes["onClick"] = "javascript:return Check_value("+this.ID+");";問題就出在3,CausesValidation是為true的。

修改代碼如下,即可解決此問題:
btnAdd.Attributes["onClick"]="javascript: if(Page_ClientValidate()) return Check_value("+this.ID+");";

主要在前面增加了如果RequiredFieldValidator控制項驗證通過後,再調用js函數,測試成功。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.