如何在ASPX页面中绕过onSubmit Form验证

时间:2010-05-11 08:46:48

标签: asp.net javascript postback validation

我在具有自定义js验证的特定ASPX页面上有一个表单。此表单上还有标题中的导航菜单。

导航菜单项以编程方式构建,并由__doPostBack调用启动,显然会提交表单。

我遇到的问题是表单本身的代码类似于以下

onsubmit='return validateForm()'

如果表格尚未填写,则表格无法提交。除非用户访问表单但决定离开,否则这本身不是问题。

当发生这种情况时,validateForm函数失败。

是否有人针对此问题采取了解决方法?

注意:在我的导航链接上,我已经设置了CausesValidation =“False”

这是标记:

<div id="divNavigate" class="absolute_topleft">
    <asp:LinkButton ID="linkGoHome" runat="server" OnClick="linkGoHome_Click" CausesValidation="false" CssClass="xxx">text.</asp:LinkButton>
</div>

这是处理程序:

protected void linkGoHome_Click(object sender, EventArgs e)
{
    Response.Redirect("xxxxx");
}

这是验证功能:

function validateTextField(field) {
    var fieldElement = document.getElementById(field);    
    var validated = false;

    if (fieldElement.value.length > 0) {
        validated = true;
    }            

    return validated;
}

这就是它的名字:

<form id="formLogin" runat="server" onsubmit="return validateTextField(field1)">

1 个答案:

答案 0 :(得分:0)

您的导航链接是否是正确的asp.net服务器控件?如果他们设置CausesValidation =“False”应该阻止他们导致验证。你可以将代码发布到你动态添加到页面的地方,最常见的解释是没有设置coresValidation属性。