3

我的页面中有一个 ajax 调用,我将 jQuery 库用于这个特定任务。在 ajax 调用的响应中,我想解析响应消息。

问题是这段代码在 IE 6-7-8 上给了我一条错误消息(奇怪的是 IE 9 运行良好,而 Firefox 运行良好):

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Timestamp: Mon, 12 Aug 2013 08:20:03 UTC


Message: Object doesn't support this property or method
Line: 94
Char: 4
Code: 0

任何想法都受到高度赞赏。看起来这行正在生成错误:

response_str = $(server_response).filter("#response").val();

我复制我的代码相关部分:

$.ajax({
  type:'POST',
  url:'ajax.php',
processData: 'false',
data:{
    data1: 'val1'
    ajax:'true'
        },
dataType: "html",
contentType: ''application/x-www-form-urlencoded''
    })
  .done( function(server_response) {
       //the following line generate error
       response_str = $(server_response).filter("#response").val();
          }
     })
}');
4

1 回答 1

1

为什么不只是find()它?

response_str = $(server_response).find("#response").val(); 

response_str = $(server_response).filter(function(i, el){
    return $(el).is('#response');
}).val();

上面的代码假设只有一个 id 为“response”的元素。

于 2013-08-12T13:33:53.163 回答