javascript - 提交HTML表单,两个动作一键
问题描述
这是我的表格:
<form id="contact-form" method="post">
我必须通过单击此按钮将内部数据传递给两个 URL:
<button onclick="sendButton();" type="submit" name="submit" class="btn btn-primary btn-lg login-button cont-submit center-block"><i class="fa fa-paper-plane" aria-hidden="true"></i> Send Request</button>
该按钮将触发下面的javascript:
function sendButton()
{
document.forms['contact-form'].action='excelReports.php';
document.forms['contact-form'].target='';
document.forms['contact-form'].submit();
document.forms['contact-form'].action='mailAnnual.php';
document.forms['contact-form'].target='';
document.forms['contact-form'].submit();
return true;
}
不幸的是,javascript没有帮助成功传递数据,我想知道是否有人知道这个问题。谢谢!
解决方案
第二次提交将永远不会执行。您必须使用 AJAX。例如:
function sendButton()
{
var form = document.getElementById('contact-form');
var formData = new FormData(form);
var xhr1 = new XMLHttpRequest();
xhr1.open('POST', 'excelReports.php', true);
xhr1.send(formData);
var xhr2 = new XMLHttpRequest();
xhr2.open('POST', 'mailAnnual.php', true);
xhr2.send(formData);
return true;
}
推荐阅读
- sql - 这个 SSRS 开关表达式我做错了什么?
- python - ConnectionResetError: [WinError 10054] 将网站读入 Pandas 时
- python - 统计浏览次数文章
- sql - 如何在postgres中获取每个日期的数据计数
- android - Kotlin 协程 UI 未冻结
- python - TidBit 电脑商店的信用计划
- python-3.x - 为什么这个特定的 if 条件永远不会执行?[如果中间 < k <= 正确:]
- java - oracle.net.ns.NetException :ORA-12505, TNS:listener 目前不知道 Oracle18c ExpressEdition 中连接描述符中给出的 SID
- javascript - setTransform 和 Scale 以适合给定图像的 Canvas
- javascript - 如何进行带有错误响应的 JSON api 调用?