2011-04-15 78 views
2

您好,我正在將數據加載到flexigrid中。我試圖使用JQuery選擇器使行可點擊,但我無法這樣做。我想知道元素是否已經完全加載,我該怎麼做?如何查找元素是否已使用JQuery加載

我想做類似if(element.load == true){//做這個}。我不確定如何檢查。有誰能幫我解決這個問題嗎?

好的,所以我已經有了這個div,並且綁定了一個flexigrid到那個div。我想知道flexigrid是否已被綁定。

$("#GridLoad").flexigrid(); 

我想知道flexigrid是否已被綁定,之後,我需要運行一段代碼。

在div Gridload上使用live()會一直如此,因爲它已經在那裏了。 :(

+0

您是使用$ .live()還是$ .delegate()將點擊事件綁定到行? – 2011-04-15 04:40:21

+0

我綁定flexigrid到div,我想在flexigrid被綁定到那個div後執行一段代碼 – macha 2011-04-15 04:44:51

回答

3

我想知道,如果該元素已滿載?

似乎有一個onSuccess回調。

$("#GridLoad").flexigrid({ 
    'onSuccess': function() { 
     // Do this. 
    } 
}); 

否則,如果綁定的內容在表更新時丟失,請通過on()附加事件,或者僅將它們捕獲到持久祖先元素,然後檢查event.target

+0

謝謝你的成功屬性人!你搖滾! – macha 2011-04-15 04:56:59

+1

@macha不用擔心,幸運的是,我發現它是因爲flexigrid文檔記錄不全:P – alex 2011-04-15 04:57:54

+0

是的,它是記錄不好的。我試圖在選擇,onClick等方面做到,幸運地找到了這個。 – macha 2011-04-15 05:00:32

0

您可以使用$(元素).live( '點擊',函數(){//做一些事情});

,這樣,如果以後加載它就會有相應的事件結合。

+0

你好Tim,謝謝你的回答,我已經做了一個編輯,請看看它 – macha 2011-04-15 04:45:21

-1

你可以使用jquery的load方法的回調函數。

像這樣:
$('#result').load('ajax/test.html', function() {
alert('Load was performed.');
});

即使你不使用「負載」的方法,在jQuery的幾乎任何方法支持的功能已經完成之後發生回調。
例如,ajax()具有成功和失敗回調,動畫具有回調等。

相關問題