maomaozgc 发表于 2013-1-23 02:22:48

jquery filter在Ajax应用要注意

问题:
filter在Firefox里出错
var stext = $(data).filter('#content').html();

data是通过ajax取回的内容,我想进行筛选,只要取回内容里的ID为content的部分。
这样的写法在IE里一切正常,不知道为什么在Firefox里就不行,用Firebug来进行查找错误,提示是jquery-1.2.1.js里第1521 行的“f = eval('false||function(a,i){return ' + f + '}');”这段有问题。

分析:

用 filter进行筛选的时候,固定的数据如 march.hu 所说的那个(var data = "<p>第一段</p><p id='second'>第二段</p>";),这种没有关系,但用AJAX取回动态数据进行筛选的时候,必须同时指定标签类型和 ID,才能正常进行筛选,要不然在Firefox下会出错。
错误的:var stext = $(data).filter('#content').html();
正确的:var stext = $(data).filter('div#content').html();

注意:
$(document).ready()是在DOM结构载入完后执行的,而window.onloal是得在所有文件都加载完后执行的,注意区别,一个是DOM加载完,一个是所有文件加载完

reference:
http://www.cssrain.cn/article.asp?id=402
页: [1]
查看完整版本: jquery filter在Ajax应用要注意