首頁 >web前端 >js教程 >JavaScript取得onclick、onchange等事件值的程式碼_jquery

JavaScript取得onclick、onchange等事件值的程式碼_jquery

WBOY
WBOY原創
2016-05-16 17:28:09988瀏覽

今天小菜處理下拉式選單級聯問題時,想取得HTML標籤中某個事件的內容,也就是數值,例如從中取得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是一個事件,因此取得的是函數對象,無法當成字串處理。 希望這篇文章能夠幫助需要的童鞋。
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn