2012-09-01 104 views
26

如何使用javascript或jquery獲取自定義屬性的值?使用Javascript或jquery獲取自定義屬性的值

<strong id="the id" original-title="I NEED THIS"> 

我試着.getAttribute() and attr() ..(Javascrupt & jQuery的),沒有成功的任何想法?

+0

讓我們看看標記呢? – adeneo

+2

希望你的ID在中間沒有空間? – adeneo

+0

是不存在空格 – stiffle

回答

41

不要在ID使用空間獲得的價值。

並添加自定義屬性使您的HTML無效。使用data-attributes代替:

<strong id="the_id" data-original-title="I NEED THIS"> 

$('#the_id').data('original-title'); 

http://jsbin.com/akoyut/2/edit

0

您可以通過以下語法

$('#theid').attr('original-title'); 
+2

使用jquery ..我試了一下,但它返回null – stiffle

0
$('#the<remove space from here>id').attr('original-title'); 
0

下面是一個工作示例:

的Javascript:

$(document).ready(function() {  
    var title = $("#the_id").attr("original-title"); 
} 

HTML:

<strong id="the_id" original-title="I NEED THIS"></strong> 
1

如果一個id,你必須使用空間,檢索元素和屬性值是這樣的:

$('[id="the id"]').attr([some attribute string]); 
//or 
$('#the\\ id').attr([some attribute string]); 

對於自定義屬性,最好使用HTML5 data-[somelabel]屬性,它是向後兼容和標準化。所以你的情況是這樣的:

<strong id="the id" data-originalTitle="I NEED THIS"> 

Read more about data-attributes

+0

+1我從來不知道我們可以使用\\轉義 – Moons

24

改變 「ID」 到 「the_id」。

document.getElementById("the_id").getAttribute("original-title"); 
15

最佳途徑使用這樣的:

可以使用普通的JavaScript它做

jQuery(this).attr('original-title'); 
+0

這不會工作... – Shubh

+0

這工作正常。我已經檢查過了。 –

+0

在谷歌瀏覽器中正常工作。 – alexander

2
a var DateofEvent = $('[data-original-title=I NEED THIS]').val(); 
相關問題