2014-04-20 64 views
0
<html> 
<head> 
<meta charset="utf-8"/> 
<script src="../JQUERY/jquery-1.11.0.js"></script> 
<script> 
function getOptions() 
{ 
    var html=new String(); 

    $.ajax(
    { 
     //url: 'http://server.com/?method=get&search=menu_group_options_with_items&type=group&group_id=6&format=json', 
     url: 'http://server.com', 
     data: 
     { 
      'method': 'get', 
      'search': 'menu_group_options_with_items', 
      'type': 'group', 
      'place_id': '6', 
      'format': 'json' 
     }, 
     dataType: 'jsonp', 
     async: false, 
     success: function (data) 
     { 
      alert("function"); 
      //var data = JSON.parse(data); 
      var h=new String(); 
      for(var i=0;i<data.length;i++) 
      { 
       h+='<div class="data">'; 

       h+=data[i]['group_option'].OptionsID+'<br>'; 
       h+=data[i]['group_option'].MenuGroupID+'<br>'; 
       h+=data[i]['group_option'].group_options_name+'<br>'; 
       h+=data[i]['group_option'].menu_group_option_information+'<br>'; 
       h+=data[i]['group_option'].menu_group_option_min_selected+'<br>'; 
       h+=data[i]['group_option'].menu_group_option_max_selected+'<br>'; 
       h+=data[i]['group_option'].fDateAdded+'<br><br><br>'; 

       for(var iter = 0; iter < data[i]['group_option']['group_option_items'].length; iter++) 
       { 

        h+=data[i]['group_option']['group_option_items'][iter]['item'].OptionItemID+'<br>'; 
        h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_name+'<br>'; 
        h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_additional_cost+'<br>'; 
        h+='<br><br><br>'; 
       } 
       h += '</div>'; 
      } 
      alert("h"); 
      alert(h); 
      alert("html equals "); 
      html=h; 
      alert(html); 

     } 

    }); 
    alert("returning html"); 
    alert(html); 
    return html; 
} 
</script> 
<script> 
$(document).ready(function() 
{ 
    var str=""; 
    str=getOptions(); 
    $('#content').append(str); 
}); 
</script> 
</head> 
<body> 
<div id="content"></div> 
</body> 
</html> 

當我使用完整的URL運行時,不會發生任何事情。我不會收到任何信息。現在我已將URL更改爲http://server.com,並將data:{}設置爲URL中的要求,但我仍然沒有收到任何內容。在這一點上,我被卡住了,不知道還有什麼可去的地方。Ajax網址錯誤未知

我的問題:

  1. 這將是一個原因,我的代碼是不工作?

  2. 我還需要做什麼才能從網站檢索數據?

+2

歡迎** **異步的奇妙世界!你不能那樣做。根據jQuery – SLaks

+0

,跨域發佈和jsonp不支持同步操作。 ref - https://api.jquery.com/jQuery.ajax/。你有沒有用小提琴檢查過這個操作? – attila

+0

那個jsonp是你誤抓到的一個錯誤! 它不是在新的更新的代碼,但仍然不起作用 – Jonathan

回答

0

async:false在jQuery 1.8之後棄用。要麼使用舊的jQuery版本更改您的代碼。

要改變你的代碼,這部分進入成功函數:

$('#content').append(str); 

我希望這有助於。

感謝

function getOptions() 
{ 

$.ajax(
{ 
    url: 'http://server.com/', 
    data: 
    { 
     'method': 'get', 
     'search': 'menu_group_options_with_items', 
     'type': 'group', 
     'place_id': '6', 
     'format': 'json' 
    }, 
    dataType: 'jsonp', 
    success: function (data) 
    { 
     alert("function"); 
     //var data = JSON.parse(data); 
     var h=new String(); 
     for(var i=0;i<data.length;i++) 
     { 
      h+='<div class="data">'; 

      h+=data[i]['group_option'].OptionsID+'<br>'; 
      h+=data[i]['group_option'].MenuGroupID+'<br>'; 
      h+=data[i]['group_option'].group_options_name+'<br>'; 
      h+=data[i]['group_option'].menu_group_option_information+'<br>'; 
      h+=data[i]['group_option'].menu_group_option_min_selected+'<br>'; 
      h+=data[i]['group_option'].menu_group_option_max_selected+'<br>'; 
      h+=data[i]['group_option'].fDateAdded+'<br><br><br>'; 

      for(var iter = 0; iter < data[i]['group_option']['group_option_items'].length; iter++) 
      { 

       h+=data[i]['group_option']['group_option_items'][iter]['item'].OptionItemID+'<br>'; 
       h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_name+'<br>'; 
       h+=data[i]['group_option']['group_option_items'][iter]['item'].menu_item_option_additional_cost+'<br>'; 
       h+='<br><br><br>'; 
      } 
      h += '</div>'; 
     } 
     alert("h"); 
     alert(h); 
     alert("html equals "); 
     html=h; 
     alert(html); 

     $('#content').append(html); 
    } 

}); 
alert("returning html"); 
alert(html);} 
+0

這不是它將信息設置爲div內容。它只是越過了我的阿賈克斯電話的網址 – Jonathan

+0

你在做跨域阿賈克斯電話嗎? – MCoder

+0

是的,即時通訊做什麼或至少試圖做 – Jonathan