我有一個使用jQuery的$ .ajax檢索數據的燈箱。將點擊事件綁定到jQuery附加鏈接
如果我找回沒有數據,那麼我會追加一個「找不到數據」的消息到我的列表中,以及一個鏈接來重置搜索參數。基本上我試圖添加一個.click()事件到我已經添加的鏈接。
問題是該函數正在立即運行,而不是等待點擊事件。
因此,當我執行此操作時,短暫出現「找不到數據」消息,然後將其替換爲默認結果。
function getImages(/* parameters ... */) {
// other code...
// if no results:
$('div#imageLightBox ul.thumbList').append('<li>Sorry, no images found. <a href="#" id="clearSearchLink">Clear search</a>.</li>');
$('a#clearSearchLink').click(new function() {
alert("clearSearchLink");
// code that resets the search parameters ...
getImages('', '', $('#lightBoxPageSize').val(), 1); // <-- calls the function that contains this code.
});
};
此外,我嘗試使用.live事件處理程序,而不是在添加鏈接之前對其進行定義 - 發生完全相同的事情,在按鈕被點擊之前執行的代碼。 – Joel 2009-09-30 22:08:20