哎,没想到今天绊死在这里...
问题: 如果验证错误,表单还是提交了。问题大概处在提交按钮的type=‘submit’,但是如果这个type改为button的话,js中的submit方法就会提示:对象不支持此属性或方法
应该怎么解决呢..一个表单如下:
<form action="trouble_add.php" method="post" >
<input .....>
<input name="Submit" id="submit" type="submit" value="提交" />
</form>
js代码:$('#submit').click(function(){
username = $('#user').val();
if(username == ''){
    $('#trouble_form').submit();
}else{
    $.ajax({
    url:'check_user.php',
    data:'name=' + username,
    type:'POST',
    dataType:'text',
    success: function(ajaxdata){
        if(ajaxdata == 1){
            alert('test');
            $("form:first").submit();
        }else{
            alert('系统中不存在该用户名,请检查输入是否正确。如果不确定客户的用户名,可填写客户名称');
            //history.back();
            $('#testinput').focus();
            return false;
        }
    }

             });
})

解决方案 »

  1.   

    $('#trouble_form').submit();
    你的form有没有给id或name赋值?
      

  2.   

    因为是拿过来改了改发的帖子,所以有错误(但是我发现不能编辑帖子T_T  )
    您可以忽略这个错误,忽略掉username为空的判断....
      

  3.   

    问题应该出在ajax那一段我把js代码改为:function f_submit(){
    username = $('#testinput').val();
    if(username == ''){
    return true;
    }else{
                    return false;
    }
    } 然后用户名为空时可以提交 为非空时不能提交ajax对这个表单提交有什么影响? 摸不着头脑...
      

  4.   

    <input type="submit" value="提交" />
    如果是这样子是不会去验证而直接提交表单的,所以你如果要验证完毕再提交,就用普通按钮。
    <input type="button" onclick="submitForm()" value="提交" />
    然后对应添加一个submitForm函数就行了。
      

  5.   


    <html>
    <head>
    <script language="javascript" type="text/javascript">function funfun()
    {
      var tmp=document.getElementById("11").value;
      alert(tmp);
      if(tmp=="aa")
    {
          document.shuyu.submit();  
      }
      else
    {
      return false;
      
      }}
    </script>
    </head>
    <body>
    <form action="22.php" method="post" name="shuyu" >
    <input type="text" id="11" name="11" >
    <input type="button" value="tijiao" onClick="javascript:funfun();">
    </form>
    </body>
    </html>
      

  6.   

    4楼和5楼正解 ,俺之前试这个方法的时候大概在button的onclick时间中用了return了,俺白痴...
    鉴于5楼辛苦给实例,多撒点分,谢谢!同谢1楼关注!
      

  7.   

    嗯..又白痴地发现在button按钮提交时用
    onClick="javascript:f();">  或者onClick="javascript:return f()" 效果是没有区别的。那之前不断测试又不断出问题的原因可能是因为未清空缓存或者其他灵异问题...