我有一个页面,其中包含最初从include_once('show_calendarV2.php');
行加载的项目列表。jquery功能无法正常工作后.html重新加载
在每个项目旁边都有一个删除图标,它会触发以下jquery从db中删除项目,然后更新页面。
$('.delete_schedule_item').click(function() {
var id = $(this).next('input[type=hidden]').attr('value');
alert (id);
$.ajax({
url: 'ajax/delete_schedule_item.php',
type: 'post',
data: { id: id },
dataType: 'json', // get back status of request in JSON
success: function(data)
{
//alert('item deleted');
}
// if (data.status) {
// alert('success');
// }
// else {
// alert('error');
// },
//... other parameters/callbacks ...
});
$.get('show_calendarV2.php', {},
function(data)
{
//load the calendar data
$("#calendar").html(data);
});
});
一切工作正常,第一次删除一个项目。 该项目被删除。 加载新页面。
但是在页面加载删除按钮后? jquery调用?不再起作用。
相同的页面用于创建初始显示以及刷新的页面,所以我不确定代码失败的原因。
想法?
Wooo。这是什么.live和为什么.click只能工作一次? – ian 2009-09-10 18:54:21
这是它的文档。它解释得很好。 http://docs.jquery.com/Events/live。从本质上讲,它使用事件委托来处理单击事件的祖先元素,并查看它发生的位置,以及它是否发生在与您的选择器相匹配的东西上,那么它就是事情。 – womp 2009-09-10 18:58:57
好吧,不像普通的javascript,每次点击时都会发生...因为这个jquery和onready()函数内部只会发生一次,除非我使用live()函数。 – ian 2009-09-10 19:01:15