2015-04-13 68 views
-5

獲取屬性元素的名稱下面是一個演示代碼:在純JavaScript

<div id="demo" myAttribute="ok"></div> 

這裏有兩兩件事我想
1)屬性名,即:「myAttribute」。
2)包含屬性'myAttribute'的元素,即:div。

+0

順便說一句,我想使用純js而不是jquery,我正在做這樣的事情:
target.attr ==「demo」,我的觀點是檢查目標元素是否具有attrib 「演示」的使用。 –

+0

任何解決方案,請? –

+2

對於這些類型的問題,如果您從您嘗試過的問題開始並針對您遇到的問題提出更具體的問題,您通常會得到更好的答覆。至少,解釋爲什麼現有的解決方案(其中有很多)不適用於您的案例。你想要的代碼的規範文檔並不完全符合SO的精神。 – JDB

回答

6

要獲得節點選擇

var list = document.querySelectorAll('[myAttribute]'); 

list匹配一個NodeList陣列狀但不能從陣列繼承。你也可以遍歷它forlist.length


要獲得NamedNodeMap上屬性

var nnm = elem.attributes; 

nnm陣列狀但不能從繼承陣列。你也可以遍歷它fornnm.length


要獲得一個使用.getAttribute

var val = elem.getAttribute('myAttribute'); 

val屬性null如果沒有這樣的屬性


要測試屬性是否存在等上的元素使用.hasAttribute

var b = elem.hasAttribute('myAttribute'); 

b將是一個布爾值,truefalse

+0

我剛剛在google上找到了一個解決方案,它是hasAttribute()方法,它檢查目標元素是否具有特定屬性並返回一個布爾值。感謝您的回答。 –

+0

@MinhBang今後,在提出問題之前嘗試尋找解決方案 - 正如您發現的,Google知道很多事情。 –

+0

是的,你是對的 –

1

使用jQuery你可以做這樣的事情。

div = $("[myAttribute]"); 
attrValue = div.attr('myAttribute'); 

div將是jQuery元素。
attrValue是 'OK'