0

我需要动态地将一个等于标签标签的类添加到父 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 并删除括号[]

有什么想法吗?

4

2 回答 2

2

您只需添加 .replace

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

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

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

于 2013-09-30T17:16:15.203 回答
2

似乎添加了该类,但是带有括号,因此只需将它们替换为 nothing :

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

小提琴

于 2013-09-30T17:13:33.357 回答