2012-02-22 17 views
1

里面我有一个具有以下明显的web应用程序(扩展名):我如何使用jQuery阿贾克斯从Chrome网络应用

{ 
    "name": "Porpington", 
    "version": "0.0.1.1", 
    "app": { 
     "launch": { 
      "local_path": "main.html" 
     } 
    }, 
    "icons": { 
     "128": "mimsy.jpg" 
    }, 
    "permissions":[ 
     "http://*/*", 
     "tabs" 
    ] 
} 

,我有一个非常简单的main.html中(使用jQuery 1.6。 4)

<script src="jquery.js"></script> 
<body> 
     <a href="javascript:getData()">getData</a><br/> 
</body> 
<script> 
function getData(){ 
    $.ajax({type: 'get', 
      mode: 'abort', 
      dataType: 'json', 
      url: 'http://localhost/confmart', 
      data: {}, 
      success: function(res){ 
       alert(res); 
      } 
    }); 
    alert(3); 
} 
</script> 

我在请求出去控制台中看到,我看到正确的响应(控制台)米,但由于某种原因,它看起来像success事件处理函数不是被解雇。
我在做什么错?

+0

你确定你可以从'main.html'发出一个AJAX请求。检查你是否必须通过“背景页面”。 – 2012-02-22 19:45:02

+0

这是一个应用程序,而不是扩展名本身 – 2012-02-22 21:21:40

回答

1

您的url:看起来对我很可疑。添加一个错误处理您的请求和超时:

timeout: 10000, 
error: function(XMLHttpRequest, textStatus, errorThrown){ 
    alert("ERROR: " + textStatus + " (" + errorThrown + ")"); 
} 

这可能会或可能不相关,但没有mode:ajax上市。

+1

的确,响应中的坏字符... – 2012-02-22 22:00:02