使用面向对象的方法设置标签元素的属性

标签具有’for’属性,使其指向某个输入字段。 我需要使用JQuery更改此属性的值,以便我可以使用:

$("label").attr("for", "targetName"); 

但我还需要设置className,所以我更喜欢使用:

 $("label").attr({ for: "targetName", className: "something" }); 

您可能已经注意到了这个问题,因为它是javascript中的关键字。 有谁知道我怎么解决这个问题? 目前我正在使用第一种方法来设置for和第二种设置其他几个属性,它可以工作,但它并不是很漂亮。

任何帮助将不胜感激。

你也可以使用htmlFor而不是:

 $("label").attr({ htmlFor: "targetName", className: "something" }); 

您是否尝试过使用字符串键:

 $("label").attr({ 'for': "targetName", 'className': "something" }); 

尝试以下方法:

 $("label").attr("for", "targetName").attr("class", "something") 

要么

 $("label").attr("for", "targetName").addClass("something") 

要么

 $("label").attr({ "for": "targetName", className: "something" }); 

这应该工作,

 $("label").attr("for","targetName").attr("class","something"); 
Interesting Posts