首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >提交表单而不重新加载页面

提交表单而不重新加载页面
EN

Stack Overflow用户
提问于 2010-05-19 21:49:23
回答 18查看 300.8K关注 0票数 103

我有一个分类广告网站,在显示广告的页面上,我正在创建一个“发送提示给朋友”表单…

因此,任何想要的人都可以将广告的提示发送到一些朋友的电子邮件地址。

我猜表单必须提交到一个php页面,对吗?

代码语言:javascript
运行
复制
<form name="tip" method="post" action="tip.php">
  Tip somebody: 
  <input 
    name="tip_email"
    type="text" 
    size="30" 
    onfocus="tip_div(1);" 
    onblur="tip_div(2);"
  />
  <input type="submit" value="Skicka Tips" />
  <input type="hidden" name="ad_id" />
</form>

提交表单时,页面将重新加载...我不想那样...

有没有办法让它不重新加载,仍然发送邮件?最好不要ajax或jquery...

EN

回答 18

Stack Overflow用户

回答已采纳

发布于 2010-05-19 21:56:36

您需要提交一个ajax请求来发送电子邮件,而不需要重新加载页面。看一看http://api.jquery.com/jQuery.ajax/

你的代码应该是这样的:

代码语言:javascript
运行
复制
$('#submit').click(function() {
    $.ajax({
        url: 'send_email.php',
        type: 'POST',
        data: {
            email: 'email@example.com',
            message: 'hello world!'
        },
        success: function(msg) {
            alert('Email Sent');
        }               
    });
});

表单将在后台提交到需要处理请求和发送电子邮件的send_email.php页面。

票数 73
EN

Stack Overflow用户

发布于 2014-10-15 18:48:01

我找到了我认为更简单的方法。如果您在页面中放置了一个Iframe,则可以重定向操作的退出并使其显示出来。当然,你什么也做不了。在这种情况下,可以将iframe显示设置为none。

代码语言:javascript
运行
复制
<iframe name="votar" style="display:none;"></iframe>
<form action="tip.php" method="post" target="votar">
    <input type="submit" value="Skicka Tips">
    <input type="hidden" name="ad_id" value="2">            
</form>
票数 98
EN

Stack Overflow用户

发布于 2010-05-19 21:53:14

您可以使用AJAX,也可以使用

  • 创建iframe并将其附加到文档
  • 将iframe名称设置为‘foo’
  • 将表单目标设置为使用'parent.notify(...)‘呈现表单操作呈现javascript要获得feedback
  • optionally,您可以删除iframe
票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2866063

复制
相关文章

相似问题

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