3
function publish(text) {
 $('#helpdiv').prepend(text);
}

function get_help(topic) {
  $.get(topic, publish);
}

<p>Hi. <a href="#" onclick="get_help('inline-help.html'); return false;">click here for more help.</a></p>
<div id="helpdiv"></div>

我继承了上面的这段 HTML 和 javascript (snippet)。它是/将被用作本地帮助。目前它仅在线,并且运行良好。但是,当我在本地复制文件时,我在 Internet Explorer 中得到“权限被拒绝”,而在 Chrome 中,当我“单击此处获取更多帮助”时,它什么也没做。它应该做的是从 inline-help.html 加载帮助内容并将其显示在 helpdiv div 中。现在这是最重要的,如果我将相同的文件复制到我的 PC 上的 inetpub 并将它们加载为http://localhost/hello.html它可以完美运行。

大概这是一个安全问题,“本地”区域不允许我从用户的 HD 加载文件?但我不太确定发生了什么,并想进一步了解这个问题,并可能想出一个解决方法。

非常感谢任何见解。

4

2 回答 2

1

jquery 的“get”使用 xmlHttpRequest,不幸的是,它不适用于本地文件。如果您确实需要能够异步获取本地数据(或来自不同域的数据),您应该使用动态脚本标签。然而,这意味着数据文件必须重新格式化为 JSON 数据。

于 2010-05-17T19:59:56.837 回答
0

我认为您的浏览器不允许您在本地运行 javascript(使用file:///访问方法)。但是,当您从中加载它时,http://localhost/它工作正常。

您需要在网站上进行开发,或者使用您的本地主机服务器。

于 2010-05-17T19:56:04.887 回答