我有一個頁面,其中包含最初從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