本人在网上下了个表单验证插件formValidator.运行没问题.
可是在按钮提交时不管合不合法,都执行操作.
请用过的朋友指点一下

解决方案 »

  1.   

    到这里看看:
    http://www.cnblogs.com/wzmaodong/archive/2008/04/06/1139329.html
      

  2.   

    http://www.cnblogs.com/wzmaodong/archive/2008/04/27/1173382.html这里详细介绍了用法
      

  3.   


    什么意思?/如果验证不通过.form都不提交啊..都没有到后台啊..
      

  4.   

    http://www.cnblogs.com/wzmaodong/archive/2008/04/27/1173382.html 
    你们看一下这上例子,它上面只是讲了前台校验这一块,
    但与后台联接的没有讲,
    也就是点按钮后要到后台执行相应的程序吧,
    我加了一个,但不管校验通没通过,都执行后台的程序,
    后台是用ashx写的
      

  5.   

        $("#button").click(function() {
                
               //网上没有对按钮事件进行说明,我这不知如何获得非法信息
                          });
      

  6.   

    还有网上的只是对按钮submit有效,
    对button确没有反应
      

  7.   


    <HTML>
    <HEAD>
    <script type="text/javascript">
    function validate(formCheck) //Function with a parameter representing a form name.
    {
    if (formCheck.name.value = "")
    {
    alert("Please provide your name:");
    formCheck.name.focus();
    return false;
    }
    var mail = formCheck.email.value
    if (mail.indexOf("@.") == -1)
    {
    alert("Please type a valid email:");
    formCheck.email.focus();
    return false;
    }
    return true;
    }
    </script>
    </HEAD>
    <BODY>
    <FORM name="inform" action="" method="post">
    Your Name: <INPUT type=text NAME="name" value="" SIZE=20><br>
    Your Email: <INPUT type=text NAME="email" value="" SIZE=30><br>
    <INPUT type="button" name="submit" value="Send" onClick="return validate(inform)";>
    <INPUT type="reset" name="reset" value="Clear">
    </FORM>
    </BODY>
    </HTML>
    你的button是submit提交的那个吗??
    那你的这里应该会有retrun false;和return true;吧
      

  8.   


    <script type="text/javascript">
    $(document).ready(function(){
    $.formValidator.initConfig({formid:"form1",onerror:function(msg){alert(msg)}});  //配置    //....在这里加入验证逻辑
        })
    在你需要验证的时候..调用
    $("#form1").validate();
      

  9.   


    在你需要验证的时候..调用 
    $("#form1").validate(); 
      

  10.   

    我用的是button,没反应,
    $("#form1").validate(); 提示没有这个属性
      

  11.   

    仅仅验证表单的话
    不用JQUERY了吧
    杀鸡用牛刀,用时候反而不好“杀”的啊
    还是直接JS比较的快捷
    例如:你要验证字段不为空的话
    就可以
    document.getElementById("ID").value != ""
    之类的会方便的太多了
      

  12.   


    //initiate validator on load
    $(function() {
    // validate contact form on keyup and submit
    $("#contactForm").validate({
    //set the rules for the field names
    rules: {
    name: {
    required: true,
    minlength: 2
    },
    email: {
    required: true,
    email: true
    },
    message: {
    required: true,
    minlength: 2
    },
    },
    //set messages to appear inline
    messages: {
    name: "Please enter your name",
    email: "Please enter a valid email address",
    message: "Please enter your message"
    }
    });
    });
    你的不是有这样的一个验证方法?能不能多贴点代码
      

  13.   

    怎么和我的不一样  $(document).ready(function() {
                var erro = false;
    $.formValidator.initConfig({ formid: "m", onerror: function(msg) { alert("校验没有通过,具体错误请看错误提示"); erro = false; }, onsuccess: function() { erro = true; return true; } });
      $("#uname").formValidator({ onshow: "请输入用户", onfocus: "·由<em>字母a~z</em>(不区分大小写)、<em>数字0~9</em>、<em>点</em>、<em>减号</em>或<em>下划线</em>组成<br />"
      + "·只能以<em>数字</em>或<em>字母</em>开头和结尾,例如:beijing.2008<br />"
      + "·用户名长度为<em>4~18</em>个字符", oncorrect: "该用户名可以注册"
                })
      .regexValidator({ regexp: "notempty", datatype: "enum", onerror: "输入不能为空或空格" })
      .inputValidator({ min: 4, max: 18, onerror: "用户名长度为4~18个字符" })
      .regexValidator({ regexp: "^[A-Za-z0-9]{1}[A-Za-z0-9._-]{0,15}[A-Za-z0-9]{1}$", onerror: "只能以字母或数字为开头结尾.中间可以有减号下划线点组成" })
      .ajaxValidator({
          type: "get",
          url: "ashx/shopzc.ashx?tj=0",
          datatype: "json",
          success: function(data) {
              if (data == "1") {
                  return true;
              }
              else {
                  return false;
              }       },
          error: function() { alert("服务器没有返回数据,可能服务器忙,也可能是非法注册.请重试"); },
          onerror: "该用户名不可用,请更换用户名",
          onwait: "正在对用户名进行合法性校验,请稍候..."
      });
                $("#pwd").formValidator({ onshow: "请输入密码", onfocus: "·由<em>字母a~z</em>(区分大小写)、<em>数字0~9</em>、<em>点</em>、<em>减号</em>或<em>下划线</em>组成<br />"
       + "·密码长度为<em>6~16</em>个字符", oncorrect: "密码合法"
                })
       .inputValidator({ min: 6, max: 16, empty: { leftempty: false, rightempty: false, emptyerror: "密码两边不能有空符号" }, onerror: "密码位数不符合要求" })
       .regexValidator({ regexp: "[A-Za-z0-9._-]{6,16}", onerror: "含有非法字符" })
          $("#Button1").click(function() {
                                   if (erro == true) {                    $.ajax({
                            type: "post",
                            url: "ashx/shopzc.ashx",                        data: "tj=1&uname=" + $("#uname").val()
                        + "&answer=" + $("#answer").val() + "&youname=" + $("#youname").val()
                        ,
                            error: function() { alert("dfs") },
                            success: function(xml) {
                                alert(xml);                        } /*success end*/
                        })/*ajax end*/
                    }
                })/*zc_tj end*/
            });     </script>
      

  14.   

    呵呵.现在我不方便直接给你试.你可以用firefox+firebug直接调试一下,一下子就找到原因了
      

  15.   

    可我用submit 有用,但用button就没用,
    我想用button
      

  16.   

    谁能给我看看,为什么用submit有用,用button就没用
      

  17.   

    正解,必须要返回false或true
    这样的问题遇到多次了
      

  18.   

    难道你是需要加个客户端判断?return?
      

  19.   

    不知如何加,我的代码在上面,用submit就一点也问题,但用button就没反应了,提示erro都是false,说明根本就没执行验证程序,不知哪少了代码
      

  20.   

     <script type="text/javascript">
            $(document).ready(function() {
                var erro = false;
                 $.formValidator.initConfig({ formid: "m", onerror: function(msg) { alert("校验没有通过,具体错误请看错误提示"); erro = false; }, onsuccess: function() { erro = true; return true; } });
                       $("#uname").formValidator({ onshow: "请输入用户", onfocus: "·由<em>字母a~z</em>(不区分大小写)、<em>数字0~9</em>、<em>点</em>、<em>减号</em>或<em>下划线</em>组成<br />"
      + "·只能以<em>数字</em>或<em>字母</em>开头和结尾,例如:beijing.2008<br />"
      + "·用户名长度为<em>4~18</em>个字符", oncorrect: "该用户名可以注册"
                })
      .regexValidator({ regexp: "notempty", datatype: "enum", onerror: "输入不能为空或空格" })
      .inputValidator({ min: 4, max: 18, onerror: "用户名长度为4~18个字符" })
      .regexValidator({ regexp: "^[A-Za-z0-9]{1}[A-Za-z0-9._-]{0,15}[A-Za-z0-9]{1}$", onerror: "只能以字母或数字为开头结尾.中间可以有减号下划线点组成" })
      .ajaxValidator({
          type: "get",
          url: "ashx/shopzc.ashx?tj=0",
          datatype: "json",
          success: function(data) {
              if (data == "1") {
                  return true;
              }
              else {
                  return false;
              }       },
          error: function() { alert("服务器没有返回数据,可能服务器忙,也可能是非法注册.请重试"); },
          onerror: "该用户名不可用,请更换用户名",
          onwait: "正在对用户名进行合法性校验,请稍候..."
      });
        $("#Button1").click(function() {
                    
                    alert(erro);
                    if (erro == true) {                    $.ajax({
                            type: "post",
                            url: "ashx/shopzc.ashx",                        data: "tj=1&uname=" + $("#uname").val() + "&pwd=" + $("#pwd1").val() + "&email=" + $("#email").val() + "&question=" + $("#question").val()
                        + "&answer=" + $("#answer").val() + "&youname=" + $("#youname").val()
                        ,
                            error: function() { alert("dfs") },
                            success: function(xml) {
                                alert(xml);                        } /*success end*/
                        })/*ajax end*/
                    }
                })/*zc_tj end*/
            });     </script>
    <form id ="m" method="get" action=""> <div class ="zch">
            <div class ="zcl1"  ><i>*</i>用户名</div>
            <div class ="zcl2"><input id="uname" type="text" maxlength="18"/></div>
            <div class ="zcl3"><div id="unameTip"  ></div></div>
        </div>
    <div class ="zchf"> <input type="submit" name="zc_tj" id="zc_tj" value="提      交" /><input 
                 id="Button1" type="button" value="button" /></div>
    </form>
      

  21.   

    <script src="js/jquery.js" type="text/javascript"></script>    <script src="js/qj/formvalidator3.0/jquery_last.js" type="text/javascript"></script>    <link href="js/qj/formvalidator3.0/style/validator.css" rel="stylesheet" type="text/css" />
            <script src="js/qj/formValidator3.0/formValidator_min.js" type="text/javascript"></script>
        <script src="js/qj/formvalidator3.0/formValidatorRegex.js" type="text/javascript"></script>以上是全部代码, submit会提示信息,但用button就不执行
      

  22.   

    解决了.    $("#Button1").click(function() {
                    jQuery.formValidator.pageIsValid();
            ...........
    注意加上jQuery.formValidator.pageIsValid();
      

  23.   

    为什么加上这句之后会这样呢
    jq.formValidator.pageIsValid is not a function