Javascript 不重定向页面的帖子
嗨 我正在编写一个应用程序,我想在单击“发送”按钮后发布数据,它会将数据发布到某个web操作并得到处理,处理后它会重定向到其他jsp页面,但我希望在单击“发送”按钮的同一页面中。我不确定XMLHttpRequest方法Javascript 不重定向页面的帖子,javascript,ajax,jsp,Javascript,Ajax,Jsp,嗨 我正在编写一个应用程序,我想在单击“发送”按钮后发布数据,它会将数据发布到某个web操作并得到处理,处理后它会重定向到其他jsp页面,但我希望在单击“发送”按钮的同一页面中。我不确定XMLHttpRequest方法 非常感谢您提出的任何解决方案。您可以使用jQuery。这将节省一些时间。它是跨浏览器兼容的(即对您隐藏跨浏览器兼容技术) 您可以将302请求作为POST请求的响应发送回您来自的页面。如果你根本不想发表文章,我可以向你展示如何通过AJAX实现这一点 您希望使用GET->POST-
非常感谢您提出的任何解决方案。您可以使用jQuery。这将节省一些时间。它是跨浏览器兼容的(即对您隐藏跨浏览器兼容技术)
您可以将302请求作为POST请求的响应发送回您来自的页面。如果你根本不想发表文章,我可以向你展示如何通过AJAX实现这一点
您希望使用GET->POST->GET的原因是,如果用户点击后退按钮,它就不会再向您发布消息。您可以使用它-它是XMLHttpRequest的方便包装器 这是一个很棒的初学者教程,介绍您(使用jQuery)要做的事情:
如果您想使用Java脚本和Ajax(如您在问题标签中所述),请尝试以下操作:
function fun() {
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
var url = "Serv?req_id=1";
xmlhttp.open("POST", url, false);
xmlhttp.send(null);
var respo= xmlhttp.responseText;
document.getElementById("some_id").innerHTML = xmlhttp.responseText;
}
调用fun()
打开onclick
事件的send按钮
希望这有帮助。302请求返回方法似乎很适合这一点,如果您使用的是ajax或XMLHttpRequest对象,就不会有这个问题,但在这里您可以将重定向头设置为重定向回处理查询字符串的同一脚本 但是,如果没有重定向,则无法执行post
我知道这有点晚了,但为了分享知识,我在这里找到了一篇好文章: 这是一个非常全面的例子,说明了如何满足你的要求
如上所述,通过AJAX/jQuery,本教程就利用了这一点。转发/重定向到同一页面有什么问题?@BalusC然后当用户决定点击刷新时,它会询问他们。。。“是否再次提交表单”@MuqMan:这仅适用于转发而不是重定向的情况,无论目标页面如何。顺便说一句,这与这里的问题完全无关。