2013-08-16 62 views
0

這是使用手機應用編寫的手機應用程序練習代碼的一部分& jquerymobile。爲什麼這個腳本不能調用網絡服務

$('#page_node_pages').live('pageshow',function(){ 
    try { 
    $.ajax({ 
     url: "http://mydomain/industry", 
     type: 'get', 
     dataType: 'json', 
     error: function (XMLHttpRequest, textStatus, errorThrown) { 
     alert('page_node_pages - failed to retrieve pages'); 
     console.log(JSON.stringify(XMLHttpRequest)); 
     console.log(JSON.stringify(textStatus)); 
     console.log(JSON.stringify(errorThrown)); 
     }, 
     success: function (data) { 
     $("#page_node_pages_list").html(""); 
     $.each(data.nodes,function (node_index,node_value) { 
      console.log(JSON.stringify(node_value)); 
      $("#page_node_pages_list").append($("<li></li>",{"html":"<a href='#page_node_view' id='" + node_value.node.Nid + "' class='page_node_pages_list_title'>" + node_value.node.name + "</a>"})); 
     }); 
     $("#page_node_pages_list").listview("destroy").listview(); 
     } 
    }); 
    } 
    catch (error) { alert("page_node_pages - " + error); } 
}); 

如果我將它編譯爲移動應用程序,它將調用Web服務。但是如果我嘗試在桌面計算機上使用chrome運行它,它不會調用Web服務。有誰知道這是什麼問題?

+1

可能跨域腳本?使用了不同版本的jQuery? –

+0

'live'is自jQuery 1.7 btw以來已棄用。 – nubinub

回答

0

您必須從(本地)服務器運行它,而不是從文件運行它。對於直接加載到瀏覽器的本地文件,Chrome的行爲不同。因此,使用本地文件的ajax調用默認情況下可能不起作用。

+0

我試圖在本地服務器或從文件運行它,似乎工作 – hkguile

+0

似乎瀏覽器阻止跨域ajax能力 – hkguile

相關問題