2015-12-01 84 views
-4

我想通過使用它的類名稱+ this,使用jQuery來選擇頁面上的動態元素。這裏是我的代碼:jQuery,使用「this」與動態選擇器

$('form').on('keyup', '.dynamicGenInput', this, function(ev){ 
    $(this).hide(); 
}); 

這種情況的正確語法是什麼?

+3

我看了你的問題幾次,我仍然困惑你想要做的一件事 - 你能否詳細說明一下? –

+1

那麼你不能使用jQuery來選擇一個在加載後動態添加到頁面的元素。我在頁面加載後添加了多個具有相同類的元素。我需要使用「開」來選擇所述元素。我想將它與「this」結合起來,只選擇目標動態元素,然後我只隱藏該單個選定元素。 – nick

+0

對不起,我把錯誤的文字複製到我的問題中,我編輯了出來。 – nick

回答

3

你可以做的是建立一個「授權」事件,就像這樣:

$('form').on('keyup', '.dynamicGenInput', function(ev){ 
}); 

這會keyup事件綁定到所有<form>元素(即存在的時間)。當它被觸發時,jQuery將檢查keyup事件實際上是否發生在.dynamicGenInput元素(這是<form>的孩子)。如果是這樣,那麼綁定函數將運行。

在函數內部,您可以訪問觸發的元素。

$('form').on('keyup', '.dynamicGenInput', function(ev){ 
    // `this` (or `ev.target`) is the .dynamicGenInput element you triggered 
});