function url()
{
var companyName='ROCHESTER REGIONAL LIBRARY COUNCIL';
var parts=companyName.split(" ");
var newName="";
for(var i=0;i<parts.length;i++)
{
newName+=parts[i];
newName+="+";
}
newName=newName.substring(0,newName.length-1);
var url="http://www.brightscope.com/autocomplete/search-box/company/?q=";
url+=newName;
url+="&limit=15×tamp=1388104659571";
return url;
}
function getjsonn(callback)
{
var urlv=url();
$.ajax({
url:urlv,
success: callback
});
}
function callback(result)
{
alert(result);
document.getElementById('te').innerHTML=result;
}
我发送一个ajax请求来获取Json响应。 我认为请求的返回值应该是我进一步处理的Json对象。
现在,好像回调函数没有运行。 我尝试使用firebug调试代码,在控制台窗口中有一行显示成功的get请求。
谢谢你的帮助。当我调用getjsonn()时,我忘了将callback作为参数添加, 我做了一些更改,现在可以在IE浏览器上使用了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<script src='http://code.jquery.com/jquery-2.0.3.min.js'></script>
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js'> </script>
<script type="text/javascript">
function url()
{
var companyName='ROCHESTER REGIONAL LIBRARY COUNCIL';
var newName=companyName.replace(" ","+");
var url="http://www.brightscope.com/autocomplete/search-box/company/?q=";
url+=newName;
url+="&limit=15×tamp=1388104659571";
return url;
}
function getjsonn(callback)
{
var urlv=url();
try
{
$.ajax({
url:urlv,
success: callback
});
}
catch(err)
{
alert("error");
}
}
function callback(result)
{
document.getElementById('te').innerHTML=result[1].extra.id;
}
</script>
<title>The typeof operator</title>
</head>
<body>
<input type='button' onclick='url()' value='get url'/>
<input type='button' onclick='getjsonn(callback)' value='get json'/>
<p id="te">ddd</p>
</body>
</html>
答案 0 :(得分:0)
这不能正常工作。请找到chrome的错误跟踪。
XMLHttpRequest
无法加载http://www.brightscope.com/autocomplete/search-box/company/?q=ROCHESTER+REGIONAL+LIBRARY+COUNCIL&limit=15×tamp=1388104659571。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点'http://localhost'
访问。
请注意,如果ajax请求调用除托管您的html和脚本之外的域,则这些域应允许并实现其服务为CORS(跨源资源共享)方式。