将值附加到表上的属性“标题”

时间:2018-09-06 14:58:49

标签: javascript jquery html5 dom html-table

我正在使用多级标头的表,我需要在数据单元格“ td”上的attr“标头”上动态添加一个值。我在表上逐行追加,每行左侧的标题动态接收其ID。这是将附加在表上的在线代码

<table>
    <tbody>
         <tr id="CacTabLine" class="cacTabLine" style="display: none">
            <th class="leftHeader">
                 <button type="buton"></button>
            </th>
            <td class="tdTotUsrA" headers="usrStud totUsrStu">
                 <p class="centro totUsrA"></p>
            </td>
            </td>
        </tr>   
    </tbody>
</table>

和应该添加属性的jQuery

var $cl = $("#cloneCacTabLine").clone();
var schoolId ="school-"+id;
$cl.find(".leftHeader").attr("id", schoolId);
$cl.find(".tdTotUsrA").attr("headers", $(this).attr("headers")+ " "+ schoolId );

我开始:

<td class="tdTotUsrA" headers="undefined school-1092">
        </td>

我希望得到这个

<td class="tdTotUsrA" headers="usrStud totUsrStu school-id">

我在jquery文档中进行了搜索,但在论坛中,e找不到任何帮助。

寻求帮助

1 个答案:

答案 0 :(得分:1)

您不能在自己的位置使用this,因为这是指未定义Javascript对象的实例。 也许先定义要添加的标头,然后将其绑定到变量以使内容整洁。然后附加它们。例如:

let oldHeaders = $cl.find(".tdTotUsrA").attr("headers");
let newHeaders = oldHeaders + " " + schoolId;
$cl.find(".tdTotUsrA").attr("headers", newHeaders );