假设 - 我办公室里的人没那么聪明/我不想为我的以下实用程序使用任何服务器端口 :)
- 我的 Html 文件驻留在本地磁盘(在考虑解决方案时考虑跨域引用约束)
- 双击后,HTML 表单打开并要求输入订单号
- 当输入并提交表单时,服务器以 XML 形式返回详细信息 注意:为了提交,我使用了 html POST 方法, 直到第 3 步,一切正常,我得到服务器响应 xml 作为浏览器的下一页。
现在, 如何解析此响应 xml,以便在第 3 步提交表单时仅在下一页显示所需数据,绕过来自服务器的原始响应。
JS提交函数
function submit1() // called when i click on submit button on my form
{
var actionFianl = "http://URL(other data is given as form post method)";
document.form1.action = actionFianl;
document.form1.submit();
}
并显示 XML 数据,以
开头<?xml version="1.0" encoding="UTF-8" ?>
最佳答案
因此,如果我理解您的问题,那么由于跨域问题,Ajax 调用是不可能的。我记得做过这样的事情,发现 Safari 可以工作,但由于跨源策略,Chrome 不喜欢它。这是前一段时间的事了,我不确定这是否是同一个问题。
如果我对您的理解正确,您希望在 Javascript 中使用 XML,而不是独立显示原始数据。如果不能使用 Ajax,我想到的是有两个文件。当前的将包含表单并获取 XML。第二个文件包含 iframe 中的第一个文件,它在提交表单时读取 iframe 的内容,并且能够读取 XML。
另一个解决方案可能类似于 node-webkit取决于您的应用程序的规模。 Node-webkit 是适用于 windows/mac/linux 的可执行文件,它附带 Webkit 和 Node,并在单个上下文中运行它们。也许您可以通过 Node 服务器获取 XML,而不是通过普通表单提交。
关于javascript - 向用户显示表单发布方法后得到的解析结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13126263/