在asp.Net LinkBut​​ton OnClientClick上触发html5表单验证

Mar*_*ina 12 javascript asp.net jquery html5

我有一个webform应用程序

在母版页中我有表格

<body class="tile-1-bg">
<form id="form1" runat="server">
Run Code Online (Sandbox Code Playgroud)

在我的page.aspx中

<div class="control-group" runat="server" id="divNome">
    <label for="txtNome" class="control-label">Nome o Ragione Sociale*</label>
    <div class="controls">
        <asp:TextBox runat="server" ID="txtNome" class="form-control input-sm" required></asp:TextBox>
    </div>
</div>
<asp:Linkbutton runat="server" ID="lnkBtnRegistrati" class="btn btn-default btn-lg btn-block" Text="REGISTRATI" OnClientClick="if(checkForm())return true; else return false;" OnClick="lnkBtnRegistrati_Click"></asp:Linkbutton>
Run Code Online (Sandbox Code Playgroud)

我想调用一个模拟Button提交的Javascript函数,如果某些验证出错则返回false并在表单字段中显示错误.

    function checkForm()
    {
         ?
    }
Run Code Online (Sandbox Code Playgroud)

我能怎么做?

Web*_*ter 2

你想要的是返回 的结果,你可以在方法 it selfcheckform中处理它的状态:checkform

ASPX代码

改变自

<asp:Linkbutton runat="server" ID="lnkBtnRegistrati" class="btn btn-default btn-lg btn-block" Text="REGISTRATI" OnClientClick="if(checkForm())return true; else return false;" OnClick="lnkBtnRegistrati_Click"></asp:Linkbutton>
Run Code Online (Sandbox Code Playgroud)

    <asp:Linkbutton runat="server" ID="lnkBtnRegistrati" class="btn btn-default  
 btn-lg btn-block" Text="REGISTRATION" OnClientClick="return checkform();"  
 OnClick="lnkBtnRegistrati_Click"></asp:Linkbutton>
Run Code Online (Sandbox Code Playgroud)

在你的JavaScript方法中:

function checkForm()
    {
        if(true) // your condition to check
       {
            return true;

       }
        else{
              return false;
           } 
    }
Run Code Online (Sandbox Code Playgroud)

解释 :

在Markup中Onclientclick无论你的条件是否满足都会返回,如果你的条件满足,那么你就会返回,反之亦然return true。这样你就可以实现你想要的