我沒有找到任何示例如何使用jQuery讀取不顯眼的數據。例如下面使用jQuery讀取不顯眼的數據
<a id="deleteFile" href="" data="123">Delete file</a>
我想從元素中讀取data
屬性。怎麼做?
我沒有找到任何示例如何使用jQuery讀取不顯眼的數據。例如下面使用jQuery讀取不顯眼的數據
<a id="deleteFile" href="" data="123">Delete file</a>
我想從元素中讀取data
屬性。怎麼做?
最好的辦法是隻得到如果使用新望jQuery庫版本(高於1.6我相信的),你也可以使用與jQuery的data()
HTML5數據屬性的元素屬性
$('#deleteFile').attr('data');
。改變你的錨鏈接到類似
<a id="deleteFile" href="" data-fileid="123">Delete file</a>
那麼你可以使用
$('#deleteFile').data('fileid');
不過,不要交替使用它們,僅使用一種方法,否則你以後可能會作爲jQuerys data()
將只讀取的承擔問題數據屬性然後將它們存儲在內部緩存中。如果通過data()
任何改變,它不會在實際的標籤屬性含義data()
和attr()
將返回不同的結果之後
這是更好地定義數據更改的屬性是這樣的:
<a id="deleteFile" href="" data-id="123">Delete file</a>
然後你可以閱讀它:
var id = $('#deleteFile').data('id');
在這種情況下使用attr
這不是個好主意。
您應該使用data-*
其中*
是一個關鍵,你想使用:
<a id="deleteFile" href="" data-file-id="123">Delete file</a>
,那麼你可以閱讀:
$('#deleteFile').data('fileId');
剎那間注意到屬性是從file-id
轉化爲fileId
這會自動發生,以符合規範。還應該注意的是,jquery會嘗試將一個值轉換爲它的JavaScript本地類型。意思是訪問的值將是一個javascript Number
而不是s字符串。如果您有領先的0
,並且因爲01
將轉換爲1
,這可能會有影響。如果您需要明確的值作爲一個字符串,然後使用attr
:
$('#deleteFile').attr('data-file-id');
你也應該注意,使用attr
當你給全屬性名,是不是隻是在駝峯數據屬性名稱。