无法在ajax调用中创建window.location.reload()

时间:2010-11-10 15:44:43

标签: javascript ajax json yahoo-api

问题

我无法使用 window.location.reload()刷新页面,该页面是在对yahoo进行的成功调用中使用的。

任何提示如何修复它。 整个代码工作正常它正在调用cse服务器获取内容从那里保存在雅虎。但我必须手动刷新页面才能带来内容。我希望它是自动的,所以我使用 window.location.reload(),但那不起作用。任何建议如何做到。下面的功能实际上是按钮的功能。

2 个答案:

答案 0 :(得分:1)

那就是问题,就在那里。

如果您的脚本是从CSE服务器的域运行的,则无法将数据发送到yahoo服务器。这是javascript的主要限制。同样,如果运行雅虎域,您可以向其发送数据,但不能将数据发送到CSE服务器,除非它是雅虎域的一部分。

会工作: 从blahblahblah.yahoo.com获取数据,然后将数据发送到somedomain.yahoo.com

无效: 从blahblahblah.somesite.com获取数据并将数据发送到somedomain.yahoo.com

重点是,如果您从“csce.unl.edu”获取数据并运行该域(也就是在该域中的浏览器窗口中运行您的脚本),则只能将数据发送到结束的站点用“.unl.edu”。所以你可以发送或接收“test.unl.edu”,但不能发送或接收一些雅虎网站。

解决方案: 在某个Web服务器上托管代理脚本,或者在PHP中编写所有代码。以下是关于代理脚本的两个很好的参考,第二个链接实际上为您提供了一个: Link 1 Link 2

需要更多帮助,你可以让我知道,我必须自己在我的服务器上设置一个,如果你遇到问题我可以帮助你。

答案 1 :(得分:1)

你试过了吗?

window.location = window.location;