我正在使用jQuery 1.7.2
此系列适用于IE9,Chrome和Firefox:
$('.' + product.id + '#' + this).text("foo");
product.id
是表示类的字符串,this
是表示id的字符串。
这行是在一个$ .each循环中,我没有发布这个函数的整个代码,因为它相当大并且错误正好位于这一行。
使用此循环动态创建的选择器示例如下:
$('.price#servicesPerMonth').text("foo");
在IE8中,我收到以下错误:
Unexpected call to method or property access.
jquery-1.7.2.js, line 5847 character 5
jQuery中的代码就是这个:
append: function() {
return this.domManip(arguments, true, function( elem ) {
if ( this.nodeType === 1 ) {
this.appendChild( elem );
}
});
},
第5847行是this.appendChild( elem );
我认为问题来自连接jQuery选择器中的this
变量,但我真的不知道解决这个问题的替代方法。
有什么建议吗?
答案 0 :(得分:1)
尝试使用
('.' + product.id + ' #' + this.id).text("foo");
或
('.' + product.id + ' #' + this.attr('id')).text("foo");
没关系,注意#
之前的空格