本帖最后由 Myprettygirl 于 2013-07-12 14:27:19 编辑

解决方案 »

  1.   

    jQuery的事件handler中return false;可以阻止默认行为和事件冒泡。给submit的button注册click,然后check,然后return false;原理上是可以的,但是,别忘了input输入框中按回车也会提交form哦。所以,不用注册click事件到submit的button上了,注册form的submit事件吧,多好啊。
      

  2.   

    我常用的作法是用一个普通按钮,不把type改submit
    进行判断后,直接用JS提交form
      

  3.   


    <form name=check action=123.php method=post target="_blank" id="form">
      <input size="30" type="text" id= "check" />
      <button class="new-btn-login" type="submit" id="submit" style="text-align:center;">确 认</button>
    </form>$("#form").click(function(){
        var tfee = $("#check").val();
        if(tfee == null || tfee ==""){
            alert("xxxxx");
            return false;
        }
        reg='/^[1-9][0-9]*$/';
        alert(reg.test(tfee));
        if(!reg.test(tfee)){
            alert("请输入正确格式");
            return false;
        }
         
    });
      

  4.   

    错了,复制你的代码没改,是form的submit事件:$("#form").submit(function(){
        var tfee = $("#check").val();
        if(tfee == null || tfee ==""){
            alert("xxxxx");
            return false;
        }
        reg='/^[1-9][0-9]*$/';
        alert(reg.test(tfee));
        if(!reg.test(tfee)){
            alert("请输入正确格式");
            return false;
        }
          
    });
      

  5.   

    这个好像能阻止第一次检测,但是下面那个reg检测,就不能阻止跳转了,这个是怎么回事?$("#form").submit(function(){
    var tfee = $("#WIDtotal_fee").val();
    if(tfee == null || tfee ==""){
    alert("请输入充值金额");
    return false;
    }
    reg='/^[1-9][0-9]*$/';
    var a= reg.test(tfee);
    alert(123);
    return false;

    });我就是这样写,也阻止不了跳转。只要tfee的值不为空。就直接跳过去了
      

  6.   

    恩,这个方法不错。我刚实验成功了。不过得把type="submit"改成button,并且 id和name都不能为submit。不然最后$("form").submit();一直成功不了