javascript - 当有回调函数时,jQuery 表单提交不起作用

标签 javascript jquery

我已经为此搜索了很多,但似乎找不到解决方案。我遇到的问题是,当定义了 callback 函数时,在 button 上使用 jQuery Submit 函数不起作用。例如,这是我的一个小测试代码:

JavaScript

function doSomething() {
    alert("Called the function");

    jQuery("#form").bind("submit", function() {
        alert("Form was submitted.");
    });
}

HTML

<form id="form" action="">
    <input type="button" onclick="javascript: doSomething();" value="From Button">

    <input type="submit" onclick="javascript: doSomething();" value="From Submit">
</form>

现在,当我单击 按钮 时,不会显示第二个警报。如果我单击 submit,我会收到两条警报消息。我发现,如果我删除 callback 函数,那么表单提交可以很好地处理这两个按钮。我还尝试在表单上添加一个 onSubmit,但这也不起作用。

我被允许使用(并且不允许更改)的 jQuery 版本是 jQuery 1.3.2。我知道这是一个非常旧的版本,但由于公司原因,我不能更改它。

最佳答案

应该是

jQuery("#form").bind("submit", function() {
    alert("Form was submitted.");
});

function doSomething() {
    alert("Called the function"); 
}

您需要在提交发生之前绑定(bind)提交 处理程序。在您的情况下,表单提交发生,然后您正在注册处理程序。

关于javascript - 当有回调函数时,jQuery 表单提交不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14699734/

相关文章:

javascript - 需要 JQuery 建议

javascript - 从 jQuery 回到 PHP

javascript - Facebook cdn Profile Picture Url Forbidden 403

javascript - 这个操作是什么意思? {| ... |} 和 +attrName

javascript - 如何计算两个数字的最小值?

javascript - 一键两种不同的 Action

javascript - Bootstrap 导航 - 手机

javascript - alert可以同时显示两个参数吗?

javascript - 需要同步 pouchDB 数据库的解决方案

jquery - 如何在 MVC5 中使用 Jquery 屏蔽输入?