当前位置: 首页 > 面试题库 >

提交表单而不刷新页面ajax,php,javascript?

夔桐
2023-03-14
问题内容

我想提交表单而不刷新页面,从我阅读的内容来看,它应该可以与Ajax一起使用,我在做什么错?

当我这样做时,一切都与php和其他东西一起工作:

document.getElementById("msg_form").submit();

但是我希望它提交而不刷新页面。

HTML的一部分:

<form name="msg_form_name" id="msg_form" class="email" action="mailer.php">
<p>Your E-mail:</p>
<input id="email_form" name="email" type="text" />
<p>Amount:</p>
<input id="amount_form" name="amount" class="amount_num" type="text" maxlength="5" />
<div id="msg_txt_lenght">characters left: 38</div>
<p>Message:</p>
<input id="message_form" name="message" class="message_form_lim" type="text" >
<input type="hidden" id="storeUrl_id" name="storeUrl_form" value="Nan"></form>
</form>

JavaScript的一部分:

$('#msg_form').submit(function (e) {
    e.preventDefault();

$.ajax({             
type: 'post',
url: 'mailer.php',
data: $('form').serialize(),
success: function () {
 alert('form was submitted');
}
    });

    return false;
});

提前致谢。

编辑:可能已修复它在提交但没有发送提交


问题答案:

解决了它只是替换了:

$('#msg_form').submit(function (e) {
    e.preventDefault();

$.ajax({             
type: 'post',
url: 'mailer.php',
data: $('#msg_form').serialize(),
success: function () {
 alert('form was submitted');
}
    });

    return false;
});

用这个代替

$.post('mailer.php', $('#msg_form').serialize())


 类似资料:
  • 问题内容: 我的表单类似于以下内容: 我是AJAX的新手,我要完成的工作是当用户单击“提交”按钮时,我希望脚本在后台运行而不刷新页面。 我尝试了类似下面的代码的方法,但是,它似乎仍然像以前一样提交表单,而不像我所需要的那样(在幕后): 如果可能的话,我想获得使用AJAX实施此功能的帮助, 提前谢谢了 问题答案: 您需要阻止默认操作(实际提交)。

  • 问题内容: 有人可以告诉我使用 jquery来显示成功提交表单 而不刷新页面 的教程。传递邮件时,在gmail上会发生类似的事情,黄色的叠加层显示邮件已传递,然后淡出。 我希望根据表单提交的结果显示消息。 问题答案: 好的…类似这样的东西…但是我没有尝试过…所以像教程一样使用它。您也可以使用json js: HTML: form_process.php

  • 问题内容: 我是django的新手。我需要简单的例子。如何使用Django,Ajax,jQuery提交表单(发布)而不刷新页面? 这是我的表单,视图和模板: views.py forms.py(使用“ ModelForm”的表单) 模板(表单html代码) 问题答案: 如果您打算将ajax提交与jquery一起使用,则不应从视图中返回html。我建议您改为这样做: 的HTML: js views.

  • 问题内容: 当按下发送按钮而字段中没有任何数据时,如何防止页面刷新? 验证设置工作正常,所有字段均变为红色,但随后页面立即刷新。我对JS的知识比较基础。 我特别认为底部的功能是“不良”。 的HTML JS 问题答案: 您可以阻止表单提交 当然,在该函数中,您可以检查是否有空白字段,如果看起来不正确,将停止提交。 没有jQuery:

  • 问题内容: 当按下发送按钮而字段中没有任何数据时,如何防止页面刷新? 验证设置工作正常,所有字段均变为红色,但随后页面立即刷新。我对JS的知识比较基础。 我特别认为底部的功能是“不良”。 的HTML JS 问题答案: 您可以阻止表单提交 当然,在该函数中,您可以检查是否有空白字段,如果看起来不正确,将停止提交。 没有jQuery:

  • 所以,我是ajax新手,我正在尝试使用ajax和jquery提交表单,我想我已经弄清楚了服务器端的逻辑,因为当我加载页面时,它会自动提交,页面会很快刷新。空白表单将进入数据库,尽管其中有很多表单,因为页面会不断提交每次刷新。所以我认为我的服务器端正在工作,但我不知道该怎么做,不仅要阻止它刷新,还要使用html表单中的提交按钮进行提交。我在html页面中使用了thymeleaf。 这是我的html表