Cyr*_*pta 2 javascript asp.net validation postback webforms
我在ASP.Net中有一个usercontrol,其中包含一个用于回发的按钮.此按钮还具有一些在处理事件之前完成的Javascript验证.
今天我尝试通过设置按钮的PostBackURL属性回发到另一个URL.但它不起作用,页面不断回复自己.所以我做了一些调查,发现了.
如果我保持对我的验证功能的调用
OnClientClick ="return validate()"然后回发不会发生.
这是按钮标记在验证时的外观.
<input type="submit" name="ctl00$cphMain$pra1$btnSubmit" value="Submit" onclick="return validate();WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$cphMain$pra1$btnSubmit", "", false, "", "Result.aspx", false, false))" id="ctl00_cphMain_pra1_btnSubmit" style="width:80px;" />
Run Code Online (Sandbox Code Playgroud)
没有验证
<input type="submit" name="ctl00$cphMain$pra1$btnSubmit" value="Submit" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$cphMain$pra1$btnSubmit", "", false, "", "Result.aspx", false, false))" id="ctl00_cphMain_pra1_btnSubmit" style="width:80px;" />
Run Code Online (Sandbox Code Playgroud)
您会注意到缺少对"return validate()"的调用,这就完全不同了.
我怎样才能让它发挥作用?
tva*_*son 13
更换
OnClientClick="return validate();"
Run Code Online (Sandbox Code Playgroud)
同
OnClientClick="if (!validate()) { return false; }"
Run Code Online (Sandbox Code Playgroud)