javascript - 我正在使用 AJAX 发布表单数据,但表单仍然不断提交并刷新页面。我缺少什么?

标签 javascript jquery ajax forms

所以我正在制作一个非常小、非常简单的聊天应用程序,主要使用 JQuery/AJAX。

这是我的 HTML 表单。

<form class="chat_form" method="post" id="chat_form" autocomplete="off">
<input class="form-control" type="text" name="chatMe" placeholder="Type here..." autocomplete="off">
<input type="submit" value="Submit" name="submit">
</form>

这是我的脚本:

<script type="text/javascript">
$('.chat_form').submit(function(){
    $.ajax({
        url: "runMe.cfm",
        type: "POST",
        data: $('.chat_form').serialize(),    
        success: function() {
            $('.chat_form input').val('');
        }
    });
});
</script>

据我了解,应该将所有表单信息提交到我的操作页面,然后清除输入 - 确实如此。那部分工作正常。我正在获取我的数据。

但是每当我提交表单时,整个页面都会重新加载,就好像它忽略了我的代码的关键部分一样。

这方面有什么帮助吗?谢谢。

最佳答案

解决方案 1:

通过添加e.preventDefault();

示例:

$('.chat_form').submit(function(e){
    e.preventDefault();
    //ajax code here
});

解决方案2

或者,通过在表单标记中添加少量 javascript onsubmit="return false" 代码:

示例:

<form class="chat_form" method="post" id="chat_form" autocomplete="off" onsubmit="return false">

关于javascript - 我正在使用 AJAX 发布表单数据,但表单仍然不断提交并刷新页面。我缺少什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44891249/

相关文章:

javascript - jquery 列表悬停改变侧 img

javascript - 使用位置:absolute; with constant scroll的水平jquery滚动条

javascript - ember js - 构建应用程序的最佳实践?

javascript - 按钮不调用 onClick (html)

php - Ajax 调用不传递任何 POST 值

javascript - JSONP 或 window.postMessage & MessageChannel

javascript - iframe 问题

javascript - $.ajax 等待完成而不挂起 UI

javascript - 为什么 'eval'执行会出错?

javascript - 如何使用下拉列表中所选对象的属性自动填充文本框