适用于Firefox,但不适用于IE

时间:2010-05-27 12:06:22

标签: javascript jquery

我使用以下内容在特定元素中查找字符串,如果存在,则勾选一个复选框。这适用于Firefox但不适用于Internet Explorer(8)。我无法找到原因。

$.fn.searchString = function(str) {
   return this.filter('*:contains("' + str + '")');
};

var myID = $('div').searchString(files_array[i].substr(-4));

alert(myID);//[object object]

alert(myID.children());//[object object]

myID.children().attr('checked', true);//does not tick checkbox

alert(myID.children().attr('checked'));//undefined

IE不喜欢children()函数吗?

感谢大家的帮助

2 个答案:

答案 0 :(得分:2)

从MSDN,参考“substr”函数:

  

说明

     

如果length为零或负数,则返回空字符串。如果未指定,则子字符串将继续到字符串的末尾。

您试图设置“myID”的原始代码中没有任何内容。

答案 1 :(得分:0)

有关此错误和解决方案,请参阅http://dev.jquery.com/ticket/167。我只是在学习jQuery。我所指的页面中的分辨率要求我们使用$("#method-download").get(0).checked = true;代替。