将单击处理程序绑定到动态元素
Binding click handler to dynamic element
当我动态创建新链接时,我无法捕捉到点击事件
$("#div").html("<a href="#" id="new">new link</a>);
$("#new").click(function(e) { //doesn't catch
e.preventDefault();
alert('click');
}
如何将处理程序绑定到动态元素?
实际上,这对我来说很好:更新了fiddle
您的原始代码中有许多语法错误。
$("#div").html("<a href='#' id='new'>new link</a>");
fixed quotes here ------^^^ ^
fixed missing end quote here --------------------^
// works fine!
$("#new").click(function(e) {
e.preventDefault();
alert('click');
});
您不能通过ID引用创建的元素,因为它还没有添加到DOM中,jQuery在DOM中搜索ID。相反,请保存对图元的引用,然后将单击附加到该引用。
var div = $('<div>').attr('id', 'div');
var link = $('<a>')
.attr('href', '#')
.attr('id', 'new')
.on('click', function(e) {
e.preventDefault();
alert('click');
})
.appendTo(div);
你应该试试这个贴出
看起来它会回答你的问题。
总之,试试
$(".test").click(function () {
$.ajax({ url: 'http://.....your path...../accounts/index',
data: {test:1},
type: 'post',
success: function(output) {
//your code
}
});
});
相关文章:
- 点击功能没有'ajax调用动态元素(Backbone)后无法工作
- 将动态元素绑定到函数;只剩下一个绑定
- 关于动态元素中循环中的事件
- 对动态元素使用.on()和e.stopPropagation()
- 只删除javascript中的1个动态元素
- 删除在加载dom之后创建的动态元素
- 从服务器和/或客户端加载动态元素的典型技术是什么
- IE7/8中的jQuery动态元素错误
- Jquery动态元素选择器
- AnguarJS$编译的动态元素
- 使用jQuery使动态元素可选择
- jquery在动态元素上调用日期选择器
- 如果在transclusion之后添加,为什么指令下的动态元素具有错误的作用域
- 如何使用jQuery唯一地识别具有相同id的类似动态元素
- 将单击处理程序绑定到动态元素
- 为动态元素附加事件处理程序
- 使用 jQuery 创建动态元素 单击事件始终返回 for 循环中的最后一个索引
- jQuery中的目标动态元素
- 将动态元素/行添加到 Angularjs 中的多维 Json 数组中
- Jquery 单击函数不适用于动态元素