在Javascript中将变量存储在变量中

时间:2012-06-09 12:20:28

标签: javascript

我想发布一个表单并使用javascript将响应html代码保存在变量中 这是我的代码:

<script type="text/javascript">
function submitform()
{
  document.forms["myform"].submit();
}
</script>

<form id="myform" action="url" method="post" target="iframe">
<input type="hidden" name="arg" value="value">
<a href="javascript: submitform()">Go</a>
</form>
<iframe name="iframe"></iframe>



如果我运行此代码,则响应将显示在iframe中。但在某些情况下,加载iframe页面后会重定向到源代码。我搜索了许多地方,以阻止重定向发生,但没有找到任何办法!! 我刚刚通过添加这个javascript代码找到了一种方法:

window.onbeforeunload = function(){
            return false;
        };

但是这种方式很烦人,因为它在重定向时会显示一个对话框,我不能要求用户每次都点击它!
所以我选择了一种方法来不在浏览器中加载响应html代码进行重定向!而不是在变量中保存响应并删除脚本然后打印它!

有什么方法可以做到吗?

3 个答案:

答案 0 :(得分:1)

你在拐角处编码。使用jQuery及其.ajax方法。而不是iframe,将返回的标记放入div。

答案 1 :(得分:1)

您应该看jQuery's AJAX function,它非常灵活且易于使用。或者,更简单的是,尝试jQuery Form Plugin,这基本上可以自动化与表单相关的所有内容。您所要做的就是指出表单并说明在表单提交之前和/或之后您想要做什么。

答案 2 :(得分:0)

您可以使用javascript发布帖子请求,而不是使用表单。在这种情况下,只要您发布到同一个域,就可以轻松捕获响应。 (出于安全原因,跨域帖子不提供返回值)。有关如何使用javascript发布的信息,请参阅JavaScript post request like a form submit