我是jquery新手,在input中添加了个属性,needValidate作为一个条件
但是执行不了,希望有高人指点
在线等

解决方案 »

  1.   


    <script src="jquery.js" type="text/javascript"> </script> 
    <script type="text/javascript"> 
    $(document).ready(function(){ 
    $("input[needValidate='true']").blur(function()

    if(requireField(this))

    var id = this.id;
    if(id=='username')
    {
     $.getJSON('check.php',
     {'username':this.value},
     function(json)
     {
        if(json.response=='0')

    $("#your_" + id).html('该用户可用!'); 

    else

    $("#your_" + id).html('该用户已经被使用,请修改!').attr("style","color:red"); 

     });

    else

     $('#your_' + id).html('通过检测'); 

      } 
    }); 
    }) function requireField(o)

    var username=/^([a-zA-Z0-9_]){6,12}$/; 
    var password=/^([a-zA-Z0-9_]){6,12}$/; 
    var email=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; 
    var your_username='用户名只能为数字字母或下划线,长度为6-12'; 
    var your_password='密码只能为数字字母或下划线,长度为6-12'; 
    var your_email='邮箱格式不正确'; 
    if(o.value.match(eval(o.id)))

      return true; 

    else

    $("#your_"+o.id).html("#your_"+o.id).attr("style","color:red"); 


    </script> 
    </head> 
    <body> 
    <form action="" method="post"> 
    username: <input type="text" name="username" id="username" needValidate="true" /> <span id="your_username"> </span> <br /> 
    password: <input type="password" name="pass" id="password" needValidate="true" /> <span id="your_password"> </span> <br /> 
    email  : <input type="text" name="email" id="email" needValidate="true" /> <span id="your_email"> </span> <br /> 
    <input type="button" name="submit" value="Submit" id="button" /> 
    </form>
      

  2.   

    应该是有问题的.
    1 .getJSON,直接传回调函数是不行的,这个我测试了好久也不行.
    2 this.id是有应用范围的,也就是说在function(json)这里,这个this也不是上一个this了.
    3 另外就是html写成htm,呵呵.