2013-06-01 80 views
1

在我的項目中,jQuery不會選擇「clicked」元素。作爲選擇器的屬性名稱問題

這裏是我當前的代碼:

$(function() { 
    $('[data-sample_attribute]').click(function() { 
     alert("sample text"); 
    }); 
}); 

我不知道如何解決它。

這裏是元素我試圖選擇:

<div class="test" data-sample_attribute="test"></div> 
+0

請解釋您在此處的「select」是什麼意思。你在期待什麼? –

+5

似乎從這裏很好地工作:http://jsfiddle.net/7XDNv/也許你在以後的時間(通過AJAX或其他事件可能?)添加'div'到DOM –

+0

它也適用於我: )http://jsfiddle.net/ExpertSystem/fWC95/ – gkalpak

回答

1

Your exact code works.

正如你在外部文件(如在註釋中規定)使用它,似乎你的元素沒有按在文件準備上不存在,所以你需要添加一個委託事件給它(例如on)。

試試這個:

$('body').on("click", "[data-sample_attribute]", function() { 
    alert("sample text"); 
}); 
+0

非常感謝。 :) –

2

也許它是一個動態的元素,加入後DOM已準備就緒。在這種情況下,使用授權:

$(document).on('click','[data-sample_attribute]',function() { 
     alert("sample text"); 
    });