這裡主要是用到了getAttributeNode()這個方法
它獲取的是屬性節點
忽略屬性和事件的差別
具體示例如下
感興趣的朋友可以參考下哈希望對大家有所幫助
今天小菜處理下拉菜單級聯問題時想獲取HTML標簽中某個事件的內容也就是值比如從<select id="city" onchange="javascript:test();"></select>中獲取javascript:test();
小菜想通過事件中的信息確定下一級的菜單但是這個貌似很簡單的問題卻讓小菜糾結了一番
稍微懂點JQuery的童鞋可能會嘗試這樣獲取
復制代碼 代碼如下:
$(document)
ready(function(){
var onchangeValue = $("#city")
attr("onchange");
alert(onchangeValue);
});
一般情況下這樣的確可以獲取到因為JQuery萬能的attr方法可以獲取標簽中任何的”屬性”即使是一個事件也可以直接獲取內容這裡onchange就是事件
但小菜在實際開發環境中用這個方法怎麼也獲取不到得到的均是undefined
在糾結之際發現了另外一種用純JavaScript實現獲取的方法
具體代碼如下
復制代碼 代碼如下:
$(document)
ready(function(){
var onchangeValue = document
getElementById("city")
getAttributeNode("onchange")
nodeValue;
alert(onchangeValue);
});
簡單說一下這裡主要是用到了getAttributeNode()這個方法它獲取的是屬性節點忽略屬性和事件的差別類似於對XML的處理然後再用nodeValue獲得屬性節點的節點值
如果使用getAttribute()方法由於onchange是一個事件因此獲取的是一個函數對象無法當成字符串處理
希望這篇文章能夠幫助需要的童鞋
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/20421.html