首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用JQuery -阻止表单提交

使用JQuery -阻止表单提交
EN

Stack Overflow用户
提问于 2012-02-19 14:34:20
回答 11查看 433K关注 0票数 201

如何防止使用jquery提交表单?

我尝试了所有的方法--看看下面我尝试的3个不同的选项,但都不起作用:

代码语言:javascript
复制
    $(document).ready(function() { 

            //option A
            $("#form").submit(function(e){
                e.preventDefault();
            });

            //option B
            $("#form").submit(function(e){
                stopEvent(e);
            });

            //option C
            $("#form").submit(function(){
                return false;
            });
    });

会出什么问题呢?

更新-这是我的html:

代码语言:javascript
复制
    <form id="form" class="form" action="page2.php" method="post"> 
       <!-- tags in the form -->
       <p class="class2">
           <input type="submit" value="Okay!" /> 
       </p>
    </form>

这里有什么问题吗?

EN

回答 11

Stack Overflow用户

发布于 2014-02-15 19:24:10

您的页面中可能只有几个表单,使用$(' form ').submit()将此事件添加到页面上表单的第一个匹配项。请改用类选择器,或尝试执行以下操作:

代码语言:javascript
复制
$('form').each(function(){
    $(this).submit(function(e){
        e.preventDefault();
        alert('it is working!');
        return  false;
    })
}) 

或者更好的版本:

代码语言:javascript
复制
$(document).on("submit", "form", function(e){
    e.preventDefault();
    alert('it works!');
    return  false;
});
票数 41
EN

Stack Overflow用户

发布于 2012-02-19 14:39:26

要防止默认/阻止表单提交,请使用

代码语言:javascript
复制
e.preventDefault();

要停止事件冒泡,请使用

代码语言:javascript
复制
e.stopPropagation();

为了防止表单提交,'return false‘也应该起作用。

票数 23
EN

Stack Overflow用户

发布于 2013-08-23 16:14:18

我也有同样的问题。我也试过你试过的东西。然后,我将我的方法更改为不使用jquery,而是在form标记中使用"onsubmit“属性。

代码语言:javascript
复制
<form onsubmit="thefunction(); return false;"> 

它起作用了。

但是,当我试图将false返回值仅放入"thefunction()“中时,并没有阻止提交过程,因此我必须将"return false;”放入onsubmit属性中。因此,我得出结论,我的表单应用程序无法从Javascript函数获得返回值。我对此一无所知。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9347282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档