在javascript中通过id调用元素

时间:2013-12-17 06:01:48

标签: javascript asp.net

我有一个转发器,里面有一个带有图标的标签。

 <strong><i id="iconProperties" class="icon-caret-right"></i>&nbsp;Properties</strong>

当我点击一个按钮时,必须将icon-caret-right转为icon-caret-down。我编写了如下代码:

 $('#iconProperties').removeClass('icon-caret-right').addClass('icon-caret-down');

当我使用此代码时,只有转发器的第一行正在工作。所有其他行的图标都没有变化。这是什么错误?

3 个答案:

答案 0 :(得分:4)

ASP.net为html元素生成唯一的ids,并且只有一个元素可以具有您在选择器中使用的标识iconProperties。您可以使用Attribute Contains Selector [name*="value"]代替id选择器来获取所有匹配元素。

$('[id*=iconProperties]').removeClass('icon-caret-right').addClass('icon-caret-down');

答案 1 :(得分:3)

如果您的ids名称相似,那么您可能会喜欢这样的名字     $('[id^=iconProperties]').removeClass('icon-caret-right').addClass('icon-caret-down');
这将更新以id“iconProperties”开头的所有项目。

值得注意的是,通常的做法是使用唯一的ids

答案 2 :(得分:1)

试试这个:

$('#iconProperties').find('.icon-caret-right').replaceWith('.icon-caret-down');