DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> 純JavaScript實現獲取onclick、onchange等事件的值
純JavaScript實現獲取onclick、onchange等事件的值
編輯:關於JavaScript     

今天小菜處理下拉菜單級聯問題時,想獲取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是一個事件,因此獲取的是一個函數對象,無法當成字符串處理。

         希望這篇文章能夠幫助需要的童鞋。。。。。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved