Jquery attr没有在IE 9上工作?

时间:2012-11-09 12:12:34

标签: javascript jquery

我试图为id和onclick添加一个attr,它在firefox和chrome上运行但是由于某种原因它不能用于IE 9。 我的代码有什么替代或出问题吗?

$(".extendedGridView tr td a").each(function (index) 
{
   if ($(this).html() == "Update") 
   {
       $(this).attr('id', 'insertButton');
       $(this).attr('onclick', "return Validate('extendedGridView')");
   }        
});

1 个答案:

答案 0 :(得分:6)

请勿使用attr。使用

 this.id = 'insertButton';
 $(this).click(function(){return Validate('extendedGridView')});

另请注意,如果有返回或空格或任何标记,则使用html()检查文本将不起作用。喜欢这个测试:

if ($(this).text().trim() == "Update") {

然后,确保每个元素都有不同的id。在你的代码中不清楚你是否在这一点上没问题,但是当你使用each时,我恐怕不是。如果您需要的是更容易选择元素,请使用类:

$(this).addClass('update');