Jquery 将.attr设置为动态创建的按钮
我尝试通过动态创建按钮传递val 首先,我使用以下代码创建按钮:Jquery 将.attr设置为动态创建的按钮,jquery,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> 在和按钮上单击我使用的: $('#file-list').on('click',
<td id=\"row-delete" + length + "\" class=\"row-status\">
<input type='image' id='btnDel' src='Images/trash.png' style='height:24px;width:24px;' />
</td>
在和按钮上单击我使用的:
$('#file-list').on('click', '#btnDel', function () {
alert(this.val);
});
单击时,如果我尝试使用id
not val,则我总是获得undefined
,而不是测试值
我可以用动态创建的按钮传递一些东西吗
感谢处理程序
中的这是一个DOM对象,而不是jQuery对象。您可以执行this.getAttribute('val')
或$(this.attr('val')
)
另外,请注意HTML5自定义属性应该以data-
开头
$("#btnDel").attr("data-val", "test value");
然后可以使用this.dataset.val
或$(this.data('val')
而不是this.val
使用this.value
或$(this.val()
$(“#btnDel”).attr(“val”,“test value”)代码>至$(“#btnDel”).val(“测试值”)代码>@Kartikeya、@Amit Garg、thanx这两个答案我都试过了,但都是空的或空的。很抱歉,也许我不够清楚(英语不是我更好的一面),这个按钮的html是在jquery文件中创建的,不是html,因为我写动态的,可能这是问题。thanx对于答案,我写的评论也是一样的,我得到的是空的、空的或未定义的值,当我尝试你的答案时,就像我写的,也许我不够清楚,因为我的英语。我用jquery代码创建了HTMLDIMACLY,也许这就是问题所在。
$("#btnDel").attr("data-val", "test value");