【发布时间】:2015-02-04 12:28:52
【问题描述】:
在带有 crossrider 的弹出扩展中工作,它在 FF 和 GC 中工作正常,但在 IE 中它通过此代码块而不执行(尝试但在之前和之后发出警报消息并且全部触发)
...
appAPI.request.get({ url: WebServiceUrl + encodeURIComponent(searchWord),
onSuccess: function(entryString) {
var entry = JSON.parse(entryString);
if(entry.SearchResults == "NoResult")
{
EmptySearch();
def.innerHTML = noResultMessage;
}
else
{
DisplayData(searchWord.toString(), entry);
}
},
onFailure: function(httpCode) {
EmptySearch();
def.innerHTML = ConnectionErrorMessage;
},
contentType: 'application/json'
});
了解更多详情:在 Win 7、IE 11 中工作
【问题讨论】:
-
appAPI.request.get 是一种异步方法,在完成之前将控制权传递给下一条语句。由于您收到“之后”消息,因此请求已发送,您可能遇到的是未触发回调。这里没有足够的信息来确定原因(例如服务器没有响应),因此为了提供适当的帮助,请提供 WebServiceUrl 和示例 searchWord。如果您希望将此保密,请提供扩展 ID,我可以查看。 [披露:我是 Crossrider 的员工]
-
回调在 FF 和 GC 中被触发,所以这不是服务器问题,反正 Id=70700
-
我过去曾见过与此类似的情况,即 IE 在与服务器的通信方面有不同的期望。我并不是说这是这里的问题,只是说它是众多问题之一。我现在要离线,但我明天会调查一下。
标签: internet-explorer crossrider