純JavaScript實現(xiàn)獲取onclick、onchange等事件的值
今天小菜處理下拉菜單級聯(lián)問題時,想獲取HTML標簽中某個事件的內容,也就是值,比如從<select id="city" onchange="javascript:test();"></select>中獲取javascript:test();。
小菜想通過事件中的信息,確定下一級的菜單,但是這個貌似很簡單的問題,卻讓小菜糾結了一番。
稍微懂點JQuery的童鞋,可能會嘗試這樣獲?。?/p>
$(document).ready(function(){
var onchangeValue = $("#city").attr("onchange");
alert(onchangeValue);
});
一般情況下,這樣的確可以獲取到,因為JQuery萬能的attr方法,可以獲取標簽中任何的”屬性”,即使是一個事件,也可以直接獲取內容,這里onchange就是事件。
但小菜在實際開發(fā)環(huán)境中,用這個方法怎么也獲取不到,得到的均是undefined。
在糾結之際,發(fā)現(xiàn)了另外一種用純JavaScript實現(xiàn)獲取的方法。
具體代碼如下:
$(document).ready(function(){
var onchangeValue = document.getElementById("city").getAttributeNode("onchange").nodeValue;
alert(onchangeValue);
});
簡單說一下,這里主要是用到了getAttributeNode()這個方法,它獲取的是屬性節(jié)點,忽略屬性和事件的差別,類似于對XML的處理,然后再用nodeValue獲得屬性節(jié)點的節(jié)點值。
如果使用getAttribute()方法,由于onchange是一個事件,因此獲取的是一個函數(shù)對象,無法當成字符串處理。
希望這篇文章能夠幫助需要的童鞋。。。。。
- javascript checkbox/radio onchange不能兼容ie8處理辦法
- Radio 單選JS動態(tài)添加的選項onchange事件無效的解決方法
- jsp中select的onchange事件用法實例
- js 觸發(fā)select onchange事件代碼
- js中的onchange和onpropertychange (onchange無效的解決方法)
- js觸發(fā)onchange事件的方法說明
- JavaScript獲取onclick、onchange等事件值的代碼
- javascript開發(fā)中使用onpropertychange,oninput事件解決onchange事件的不足
- javascript中的 onchange事件詳解
相關文章
JS與jQuery實現(xiàn)子窗口獲取父窗口元素值的方法
這篇文章主要介紹了JS與jQuery實現(xiàn)子窗口獲取父窗口元素值的方法,涉及javascript與jQuery操作窗口元素的相關技巧,需要的朋友可以參考下2017-04-04
javascript仿php的print_r函數(shù)輸出json數(shù)據(jù)
輸出json數(shù)據(jù),php的print_r函數(shù)可以輕松實現(xiàn),下面為大家介紹下javascript也可以模仿print_r函數(shù)輸出json數(shù)據(jù),具體實現(xiàn)如下,感興趣的朋友可以了解下2013-09-09

