我需要从当前无法访问的链接中删除名称无效的属性,但仍然需要更改。
直到我可以使用我使用jQuery的代码来更改元素的href
属性并删除一些不必要的属性:
jQuery(".description p a").each(function() {
jQuery(this).attr("href", "https://newsite.com/pricelist");
jQuery(this).attr("title", "Have a look at our new pricelist");
jQuery(this).removeAttr("attr1 attr2 attr3"); //eight attribute in total
});
这可以正常工作。
但是,a
元素还包含第九个(空)属性,其名称无效,即n'
(包括分号)。我不知道它是怎么到达那里的,但是我需要摆脱它。
当我在上述代码中将n'
添加到可移动属性列表中时,浏览器控制台状态为Uncaught DOMException: Failed to execute 'setAttribute' on 'Element': 'n'' is not a valid attribute name
,据我所知。但是,当我转义&
,#
和;
字符(n\&\#039\;
)时,控制台会显示完全相同的错误。
我知道'
是表示引号('
)的HTML代码。我涉足html_entity_decode
,但似乎做对了。
如何使用jQuery摆脱这个无效命名的属性?