我有一个扩容的组合框听筒。在展开时,它对组合框选项中具有特定类的每个元素执行一些样式设置。所需的更改之一是根据当前属性值对属性进行更改。使用this返回未定义的。
expand : function(combo) {
$('.status-0').addClass('greyed-out');
$('.status-0').attr('attrname', $(this).attr('attrname') + ' is status 0');
}对于每个带有.status-0的元素,我都希望它们的属性字符串有"is 0“附加到它。该属性是一个ExtJS工具提示,但是该解决方案应该适用于任何属性类型。
发布于 2014-12-16 13:55:11
您需要使用function重载的$.attr,它接受一个function,它将接收两个参数,即索引和属性值。this将引用该元素。但是我们这里不需要它,因为我们可以只使用传递的属性值。
$('.status-0').attr('attrname', function(_, attrVal){
return attrVal + ' is status 0';
});https://stackoverflow.com/questions/27506198
复制相似问题