0

我正在使用 getJSON 函数来捕获从 URL 调用返回的内容,但是,我一直遇到错误引用或语法错误。

如果我以“agent_name”作为参数运行脚本 getUserAgentDetails(),我会收到未捕获的 ReferenceError,说明 Chome(我正在使用的浏览器)未定义,而如果我使用参数“agent_version”或“os_name”我收到未捕获的语法错误,指出意外的数字。

我相信来自“os_name”的意外数字是由于我的 Windows 7 操作系统中的“7”,所以我怀疑返回时内容处理不正确。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
function getUserAgentDetails(param) {
$(document).ready(function() {
  $.getJSON(('http://www.useragentstring.com/?uas=' + encodeURI(navigator.userAgent) + '&getText=' + param + '&callback=?'), function(data) {
    var parts = data.split('=');
    alert(parts[1]);
  });
});
}

getUserAgentDetails("agent_name"); //Results in "Uncaught ReferenceError: Chrome is not defined"
//getUserAgentDetails("agent_version"); //Results in "Uncaught SyntaxError: Unexpected number "
//getUserAgentDetails("os_name"); //results in "Uncaught SyntaxError: Unexpected number "
</script>
4

1 回答 1

0

对于请求,例如跨域请求,即;在您的情况下,json将不起作用..在这种情况下您需要使用jsonp ..

检查此链接

于 2012-10-04T00:57:26.200 回答