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

时间:2009-08-05 11:11:28

标签: jquery label for-attribute

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

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

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

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

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

非常感谢任何帮助。

4 个答案:

答案 0 :(得分:5)

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

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

答案 1 :(得分:2)

尝试类似:

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

OR

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

OR

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

答案 2 :(得分:2)

您也可以使用htmlFor而不是:

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

答案 3 :(得分:0)

这应该有效,

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