根据手册如下:
http://api.jquery.com/attr/
attr( attributeName, value )
Run Code Online (Sandbox Code Playgroud)
我应该能够替换所选元素的属性值.
<div id="keynote1Fld" class="row ">
<label for="keynote1" class="labeloptional">Topic 1</label>
<div class="collection">
<input type="text" class="largetextfield" maxlength="96" size="96" value="" id="keynote1" name="keynote1" />
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我需要将keynote1的label类值从labeloptional替换为label.
这是做了什么:
$("label[for=keynote1]").att('class', 'label');
Run Code Online (Sandbox Code Playgroud)
但是,执行上述语句后,keynote1标签的类值仍为"labeloptional".
为什么?
谢谢
您需要使用attr不att.
但是,如果您要更改课程,则不应使用attr().
你应该做的是使用removeClass()和addClass().
$('label').removeClass('oldClass').addClass('newClass');
Run Code Online (Sandbox Code Playgroud)
这样,您将不会覆盖可能分配给标记的任何其他类.