jquery从标签的标签中将类添加到TR

时间:2013-09-30 17:10:08

标签: jquery

我需要动态地将一个等于标签标签的类添加到父tr ...这里是我对HTML的代码

<tr valign="top">
<th scope="row">
    <label for="field[85]" id="rahil">File Upload</label>
    </th>
<td style="background:#eee;border:1px solid #ddd"><a href="" target="_blank">Info here</a></td>
</tr>

我正在尝试的jQuery如下:

$("tr th label").each(function() {
    var id = $(this).attr("for");        
    $(this).closest('tr').addClass(id);
});

结果代码应该是:

<tr valign="top" class="field85">
<th scope="row">
    <label for="field[85]" id="rahil">File Upload</label>
    </th>
<td style="background:#eee;border:1px solid #ddd"><a href="" target="_blank">Info here</a></td>
</tr>

基本上,想要获取值的标签,将其作为类添加到父tr并删除括号[]

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

似乎添加了类,但是使用括号,所以只需替换它们:

$("tr th label").each(function () {
    var id = $(this).attr("for").replace(/(\[|\])/g,'');
    $(this).closest('tr').addClass(id);
});

FIDDLE

答案 1 :(得分:2)

您只需添加.replace

即可
var id = $(this).attr("for").replace(/(\[|\])/g,''); 
                                        ^  ^   = ^ 

http://jsfiddle.net/eh977/1/

替换方法http://www.w3schools.com/jsref/jsref_replace.asp