我使用了把手附加了一些html,但我无法从超链接中获取该事件:
JS - 在document.ready。
期间调用此代码$(".media-item a.meddelete").unbind("click");
$(".media-item a.meddelete").click(function (event) {
event.preventDefault();
var id = $(this).data("assetid");
alert(id);
});
HTML
<div class="media-item">
<p><a href="ImageManipulation.aspx">Edit</a></p>
<p><a href="#" class="meddelete">Delete</a></p>
</div>
我看不出有什么问题,有什么想法吗?
答案 0 :(得分:2)
改变这个:
$(".media-item a.meddelete").click(function (event) {
到此:
$(document).on('click', ".media-item a.meddelete", function (event) {
如果要动态地向页面添加元素,则需要使用jQuery的事件委托语法。
答案 1 :(得分:2)
假设通过'inject'表示示例中的元素在页面加载后动态地附加到DOM,您需要使用委托的事件处理程序:
$(document).on('click', '.media-item a.meddelete', function (event) {
event.preventDefault();
var id = $(this).data("assetid");
alert(id);
});
请注意,我的示例中的document
应更改为最接近的静态元素,以获得最佳效果。