如何委派在引导酥料饼()HTML元素,使用jQuery
问题描述:
余米试图启用,点击编辑按钮禁用的控制,但使用jQuery委托function.Here是代码我不能访问它:如何委派在引导酥料饼()HTML元素,使用jQuery
$('#table-view-task').delegate('tr:not(:first)','click', function(){
var id = $(this).find('td:first').text();
var task = $(this).find('td:eq(1)').text();
$(this).popover({
html: true,
delay: { show: 0, hide: 0 },
title: function() {
return '<div>'+task+'</div>';
},
content: function() {
return '<div id="pop-container">'+
'<label>ID</label>'+
'<input type="text" value="'+id+'" id="txt-edit-id" disabled/>'+
'<label>Task</label>'+
'<input type="text" value="'+task+'" id="txt-edit-task" disabled/>'+
'<a href="#" class="btn" id="btn-edit-task">Edit</a>'+
'<a href="#" class="btn" id="btn-save-task">Save</a>'+
'</div>';
}
});
});
这将正确打印所有html元素的弹出窗口。如何使用jquery访问这些元素。 那么如何进入编辑link.Here就是我想要做的是:
$('#pop-container').delegate('a','click', function(){
alert('editing');
});
答
您需要取消对链接的默认操作[编辑:并听取body
而不是#pop-container
。尝试
$('body').delegate('#btn-edit-task, #btn-save-task','click', function(e){
e.preventDefault();
alert('editing');
});
如果不取消对链接的默认行为,他们就会带你被他们href
属性指定的URL。
注意,因为.delegate()
已由.on()
方法的jQuery 1.7和更高的被取代,这将是更好的事:
$('body').on('click', '#btn-edit-task, #btn-save-task', function(e) {
e.preventDefault();
alert('editing');
});
仍不working.I甚至使用id作为selector.Its不工作其他元素如输入。 – tutorame 2013-02-28 04:06:58
对不起,那个跳到我身上,但我只注意到一些更重要的东西 - 弹出窗口不会被附加到该表格,它会被附加到文档主体。所以你需要将事件处理程序委托给'body',而不是表格。我现在编辑我的答案。 – Liv 2013-02-28 12:15:35