为什么此脚本无法调用Web服务

时间:2013-08-16 09:02:35

标签: jquery jquery-mobile

这是使用phonegap& amp ;;写的移动应用程序实践代码的一部分。 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 个答案:

答案 0 :(得分:0)

您必须从(本地)服务器运行它,而不是从文件运行它。对于直接加载到浏览器的本地文件,Chrome的行为有所不同。因此,默认情况下,使用本地文件调用ajax可能不起作用。