[英]Why Callback function does not execute?
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()時忘了添加回調作為參數,我做了一些更改,現在可以在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>
這不能正常工作。 請找到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(跨源資源共享)方式實現其服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.