ASP.NET:客户端验证、服务器端操作

ASP.NET: Client-side validation, server-side action

本文关键字:服务器端 操作 验证 客户端 NET ASP      更新时间:2023-09-26

出于某种原因,我将HTML控件与runat="server"一起使用。其中一个控件是按钮。我有客户端验证功能。我不想在客户端验证成功后触发服务器端操作。

.HTML:

<button type="button" id="webSubmit" 
runat="server" 
onclick="return $('#form1').valid();">Submit</button>

服务器端:

protected void webSubmit_ServerClick(object sender, EventArgs e)
{
   //foo
}

当我单击该按钮时,它会验证表单,但即使验证返回 true,也不会回发

它由 ASP.net 生成:

<button onclick="return $('#form1').valid(); __doPostBack('webSubmit','')" 
id="webSubmit" type="button">Submit</button>

我将点击代码更改为:

onclick="$('#form1').valid() && "

ASP.net 生成的代码是:

<button onclick="$('#form1').valid() &&  __doPostBack('webSubmit','')" 
id="webSubmit" type="button">Submit</button>

它等于:

if ($('#form1').valid()){
__doPostBack('webSubmit','')
}

我的想法来自:我可以在内联 javascript if 语句中省略 else 吗?