对于bassistance jquery验证插件的问题,表单在无效时提交

时间:2011-01-11 13:29:07

标签: asp.net jquery vb.net jquery-validate

在尝试使用bassistance jquery验证插件时,我似乎找不到任何评论我的行为。

我在VB.net工作(我知道,我知道)

无论如何,我有几个带有用户控件的嵌套母版页,这是我的表格。

问题是,验证工作正常,我收到一条消息,说首字母是必需的,但表格然后提交。有没有人碰到过这个?并且有人有解决方案吗?

usercontrol声明如下:

<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="CampaignForm.ascx.vb" Inherits="CampaignForm" %>

插件规则的脚本

<script type="text/javascript">
    // only for test purposes
    $.validator.setDefaults({
        submitHandler: function () {
            alert("submitted!");
        }
    });

    $(document).ready(function () {
        $("#form1").validate({
            rules:{ 
            <%=tbFirstName.UniqueID %>: {
                required:true,
                minlength:2
                }
            }, messages:{}
        });
    });
</script>

然后输入规则

<asp:TextBox class="Wider" ID="tbFirstName" ClientIDMode="Static" runat="server"></asp:TextBox> 
<label for="tbFirstName" class="error">First name is required and must be longer than 2 characters</label>

提交按钮:

<asp:Button Width="248" Height="68" ID="btnSubmit" CssClass="btnCompareNow" runat="server" />

最后处理按钮的方法提交:

Private Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click

    If Page.IsValid Then
    End If

End Sub

1 个答案:

答案 0 :(得分:1)

我可能错了,但我认为它是因为你使用服务器端控制按钮,无论如何都会发布数据......

<强> EDIT1

调用按钮提交功能,如onClick="validate(this);"

<script>
function validate(e){
e.preventDefault();
}


</script>

<强> EDIT2

$(document).ready(function(){

$('#btnSubmit').click(function(e) {
        e.preventDefault();
    });
});