javascript - 我如何将ajax提交功能添加到表单

标签 javascript ajax

我认为这会奏效,也许我错过了什么?我该怎么做才能调用 javascript 提交事件?

谢谢,

约翰

<html>
<body>
<form name='myForm' action='formprocess.php' method='get'>
Name: <input type='text' onChange="ajaxFunction();" name='username' /> <br />
Time: <input type='text' name='time' />
</form>
<script type="text/javascript">
    var frm = $('myform');
    frm.submit(function () {
        $.ajax({
            type: frm.attr('method'),
            url: frm.attr('action'),
            data: frm.serialize(),
            success: function (data) {
                alert('ok');
            }
        });

        return preventDefault();
    });
</script>
<div id="box"> </div>
</body>

最佳答案

第一个问题是name='myForm' . name 属性(表单 controls 除外(如 <input> ))已过时。使用 id属性代替。

id="myForm"

第二个问题是$('myform');这将选择 <myform>元素。使用 #myForm通过 ID 选择元素。

第三个问题是return preventDefault(); .

preventDefault是事件对象的方法,不是全局的,不应返回。

您需要捕获事件对象(它是函数的第一个参数)并调用它的方法:

frm.submit(function (evt) {
    …
    evt.preventDefault();
});

第四(给 Tieson T 的帽子提示),您需要在表单中有一个提交按钮才能提交。

关于javascript - 我如何将ajax提交功能添加到表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17939636/

相关文章:

jquery - jQuery JSON ajax 请求上的空请求正文

javascript - NWJS ('child_process' ).exec 命令未找到

javascript - 导航菜单未在浏览器中呈现

php - 页面刷新而不是 Ajax Load 没有

javascript - jQuery中是否有一种方法可以从元素向上遍历dom树并在其父元素之前检查选择器

javascript - 如何在点击函数中显示当前循环迭代,javascript

javascript - 如何使用 json 数组键到 javascript 变量

javascript - 如何从 JSON 中的 Ajax 响应中获取对象信息

javascript - Dropzone js 不会触发 ajax 调用

IE 上的 AJAX POST 请求失败,错误为 "No Transport"?