2013-03-15 61 views
0

在我的控制,我的代码是这样的,如何在IE7或IE8中获取jQuery ajax结果数据?

int resultCount = 3; 
mav.addObject("resultCount", resultCount); 

和我的JSP代码是这样的,

$.ajax({ 
    url: ...., 
    type: 'POST', 
    data: ...., 
    success: function(result) { 
     if(result.resultCount != null){ 
       *// here, I can see resultCount(3) in Chrome or IE9 
       // but it's undefiend in IE7 or IE8* 
     } 
    }, 
    error : function(error){ 
    } 

我的问题是如何获得IE7或IE8的RESULTCOUNT个。

当我控制或警告结果时,它包含resultCount(“resultCount”:3)。

我可能会问一个愚蠢的问题,但请给我任何想法。 谢谢。

+0

这不是一个愚蠢的问题。我们只需要额外的信息。什么'dataType'是你的请求回来(即XML,字符串,JSON等)? – War10ck 2013-03-15 12:49:15

回答

0

尝试添加dataType:'json'

$.ajax({ 
    url: ...., 
    type: 'POST', 
    data: ...., 
    dataType: 'json', 
// ^^^^^^^^^^^^^^^ 
    success: function (result) { 
     if (result.resultCount != null) { 
      * // here, I can see resultCount(3) in Chrome or IE9 
      // but it's undefiend in IE7 or IE8* 
     } 
    }, 
    error: function (error) { 
    } 
+0

OP还必须修改服务器上的返回标题才能使其起作用。即使结果是正确的,如果客户端要求'json'并且没有收到它,jQuery通常会陷入错误回调。 – War10ck 2013-03-15 12:50:35

+0

@ War10ck,好吧......没有看到完整的服务器代码,我们永远不会确定......但它似乎与'dataType'有关。 – gdoron 2013-03-15 12:51:57

+1

哦,我同意你的意见。没有看到额外的代码,我想我们已经说了我们所能说的一切。应该指出的是,OP可能必须稍微修改响应头才能正常工作。只是一个侧面说明。 :) – War10ck 2013-03-15 12:54:31