Javascript 停止提交表格

Javascript 停止提交表格,javascript,jquery,forms,submit,Javascript,Jquery,Forms,Submit,所以,我有一个表格,即 <form method="post" action="url" blah blah blah"> <input type="text" name="dollars" id="dollars"> <input type="text" name="cents" id="cents"> <input id="checkout" type="submit"> </form> 工作演示 e.preventDe

所以,我有一个表格,即

 <form method="post" action="url" blah blah blah">
 <input type="text" name="dollars" id="dollars">
 <input type="text" name="cents" id="cents">
 <input id="checkout" type="submit">
 </form>

工作演示

e.preventDefault()-

e.preventDefault()api将帮助您防止默认行为,您可以加入yopur期望的行为

希望这能满足您的需求
:)

代码

  $('#checkout').click(function (e) {
         e.preventDefault();
         //set variables
         var dollars = $('#dollars').val();
         var cents = $('#cents').val();

         if (dollars < 5 || cents < 5) {

             alert("You can't do that.");
             return false;

         }

     });
$(“#签出”)。单击(函数(e){
e、 预防默认值();
//设置变量
var美元=$(“#美元”).val();
var cents=$('#cents').val();
如果(美元<5 | |美分<5){
警惕(“你不能那样做。”);
返回false;
}
});
html缺少一些结束标记

<form action="post">
    <input type="text" name="dollars" id="dollars" />
    <input type="text" name="cents" id="cents" />
    <input id="checkout" type="submit" />
</form>

您也可以这样做,因为有些人建议将“提交”按钮保持原样

$("form_reference").submit(function(){
    // return result depending on your condition
    // true or false
    return false;
});

如果用户未满足条件,则可以将属性
禁用
添加到
签出

不要监听
单击
事件,而是监听事件(在表单上)。这样,您的
return false
就承担了取消表单提交的双重职责。但为了进一步消除您的疑虑,您还可以在触发处理程序时对事件进行处理

另外,由于
#美元
#美分
指的是文本框,因此返回字符串。在比较之前,使用

$(函数(){
$('form')。提交(函数(e){
var美元=$(“#美元”).val();
var cents=$('#cents').val();
//转换为整数,但默认为0
美元=(美元?parseInt(美元,10):0);
美分=(美分?帕塞因特(美分,10):0);
如果(美元<5 | |美分<5){
e、 预防默认值();
警惕(“你不能那样做。”);
返回false;
}
});
});
工作正常,您可以从演示中看到,在您单击“警报”窗口上的“确定”后,表单不会被提交,但我宁愿在表单上使用
提交
事件,传递
事件
对象,并使用
事件.preventDefault()


$(文档).ready(函数(){
$('#checkout')。最近('form')。在('submit',函数(e)上{
//设置变量
var美元=$(“#美元”).val();
var cents=$('#cents').val();
如果(美元<5 | |美分<5){
e、 预防默认值();
警惕(“你不能那样做。”);
}
});
});

我想你确实想写@user3558931。编辑。。。谢谢还请注意,对于您的
,“post”是方法,而您的url(您的link.php)是操作。e、 g.
$("form_reference").submit(function(){
    // return result depending on your condition
    // true or false
    return false;
});
$(function () {
    $('form').submit(function (e) {

        var dollars = $('#dollars').val();
        var cents = $('#cents').val();

        // convert to ints, but default to 0
        dollars = (dollars ? parseInt(dollars, 10) : 0);
        cents = (cents ? parseInt(cents, 10) : 0);

        if (dollars < 5 || cents < 5) {
            e.preventDefault();
            alert("You can't do that.");
            return false;
        }
    });
});
<form method="post">
 <input type="text" name="dollars" id="dollars">
 <input type="text" name="cents" id="cents">
 <input id="checkout" type="submit">
 </form>


$(document).ready(function () {
    $('#checkout').closest('form').on('submit',function (e) {
        //set variables
        var dollars = $('#dollars').val();
        var cents = $('#cents').val();

        if (dollars < 5 || cents < 5) {
            e.preventDefault();
            alert("You can't do that.");
        }
    });
});