将.attr设置为动态创建的按钮

时间:2014-09-20 11:43:34

标签: jquery

我尝试使用动态创建按钮传递val。

首先我用这段代码创建按钮:

<td id=\"row-delete" + length + "\" class=\"row-status\">
   <input type='image' id='btnDel' src='Images/trash.png' style='height:24px;width:24px;' />
</td>

此行将我的按钮添加到表格列。

之后我尝试在此按钮中添加一个参数:

$("#btnDel").attr("val", "test value");

然后在和按钮上单击我使用:

$('#file-list').on('click', '#btnDel', function () {
    alert(this.val);
});

点击后我总是得到undefined,如果我尝试使用id而不是btnDel,而不是test-value

我可以使用动态创建的按钮传递内容吗?

由于

1 个答案:

答案 0 :(得分:0)

在处理程序this中是一个DOM对象,而不是一个jQuery对象。您可以this.getAttribute('val')$(this).attr('val')

另请注意,HTML5自定义属性应以data-开头。

$("#btnDel").attr("data-val", "test value");

然后您可以使用this.dataset.val$(this).data('val')