2 回答
TA贡献1821条经验 获得超4个赞
您向发出两个请求sheet.php
。第一个是“静默” POST请求,第二个是在成功完成第一个POST请求之后的GET请求。
第二个请求将不会共享第一个请求的有效负载。
如果我正确地理解以下代码,那么您应该做的是...
// Create a form element
// <form action="sheet.php" method="post"></form>
var tempForm = document.createElement('form');
tempForm.setAttribute('action', 'sheet.php');
tempForm.setAttribute('method', 'POST');
tempForm.setAttribute('target', '_blank'); // Open in new tab
// Create an input field
// <input name="mnu" value="...">
var tempInput = document.createElement('input');
tempInput.setAttribute('name', 'mnu');
tempInput.setAttribute('value', JSON.stringify(student)); // Set field value
// Add the input to the form
tempForm.appendChild(tempInput);
// Add the form to the body in order to post
document.body.appendChild(tempForm);
// Submit the form
tempForm.submit();
// Remove the form
document.body.removeChild(tempForm);
而且,如果您使用的是jQuery,则可以简化上面的代码。
$('<form>', {
action: 'sheet.php',
method: 'POST',
target: '_blank',
html: $('<input>', {
name: 'mnu',
value: JSON.stringify(student)
}).prop('outerHTML')
}).appendTo($('body')).submit().remove();
TA贡献1789条经验 获得超8个赞
更改http.send('mnu='+JSON.stringify(student));
为http.send(JSON.stringify(student));
然后在您sheet.php
使用json_decode($_POST)
中获取您的POST数据
- 2 回答
- 0 关注
- 193 浏览
添加回答
举报