我有一个元素"<a id="sample" jquery1234567="0">Testing</a>"
我想从上面的标记中删除最后一个属性(jquery1234567)。但是属性"jquery1234567"将动态生成。
此生成属性的值为$.expando
。因此,如果你想删除它,只需使用:
$('#sample').removeAttr($.exexpo);
尽管我不建议删除这个属性,因为jQuery使用它来跟踪绑定到DOM元素的事件处理程序。影响此行为的正确方法是使用jQuery将事件从该元素中解除绑定。
尝试这个
$.fn.getRegexAttr = function(regex, action) {
if( !this.length ) return false;
if( 'remove' == action ){
var that = this;
$(this[0].attributes)
.filter(function(){ return regex.test(this.name); })
.each(function(){ $(that).removeAttr(this.name); });
}else if( 'fetch' == action ){
return $(this[0].attributes)
.filter(function(){ return regex.test(this.name); })
.map(function(){ return $.trim(this.name); })
.get();
}
}
if( $('#sample').getRegexAttr(/jquery[0-9]/, 'fetch') )
alert( $('#sample').getRegexAttr(/jquery[0-9]/, 'fetch').join(',') );// To get the matched attributes
$('#sample').getRegexAttr(/jquery[0-9]/, 'remove');// To remove the matched attributes
您也可以在以下位置进行验证:http://jsfiddle.net/Nng8n/3/
尝试这个
$("#sample").removeAttr('jquery1234567');
(or)
var id=1234567;
$("#sample").removeAttr('jquery'+id);
这对你没有帮助。。请添加一些额外的描述和代码。。。
嗨,朋友,这将帮助你
lastAttrIndex=($("#sample")[0].attributes.length)-1;
lastAttr=$("#sample")[0].attributes[lastAttrIndex].name;
$("#sample").removeAttr(lastAttr);