JavaScript获取onclick、onchange等事件值的代码

  这里主要是用到了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是一个事件,因此获取的是一个函数对象,无法当成字符串处理。

时间: 2024-10-13 16:19:02

JavaScript获取onclick、onchange等事件值的代码的相关文章

javascript 获取样式表里的属性值 currentStyle 和 getComputedStyle 的使用

很多时候我们要获取 CSS 样式表里面的值(非行间样式),而获取行间样式的属性值那么这用 obj.style.attr 就能获取得到,那么怎么样才能获取到CSS样式表里面的值呢,那么就要请出我们的主角 currentStyle 和 getComputedStyle ,简要的介绍一下他们,再封装一个函数来兼容各个浏览器. 介绍: currentStyle :这个属性是 IE 浏览器上使用的. getComputedStyle :这个方法是 搞基 浏览器上使用的. 封装: //这里的 obj 参数指

JavaScript获取复选框的值

使用JavaScript获取复选框的值 <!DOCTYPE html> <html> <head> <meta charset="GBK"> <title>获取复选框的值</title> <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"> </script> <script>

C++ 获取PE文件自校验值的代码

将写代码过程比较重要的一些代码收藏起来,下边资料是关于C++ 获取PE文件自校验值的代码. #include#include <imagehlp.h>#pragma comment(lib,"imagehlp") { char szFileName[] = "d:\newupdate.exe"; DWORD dwCheckSum1,dwCheckSum2; if (MapFileAndCheckSum(szFileName,&dwCheckSum

javascript 获取&lt;td&gt;标签内的值。

当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). HTML DOM 模型被构造为对象的树. 通过可编程的对象模型,JavaScript 获得了足够的能力来创建动态的 HTML.有所谓的: JavaScript 能够改变页面中的所有 HTML 元素 JavaScript 能够改变页面中的所有 HTML 属性 JavaScript 能够改变页面中的所有 CSS 样式 JavaScript 能够对页面中的所有事件做出反应 javascript强大如斯...

javascript 获取表单中radio选中值

radio是form表单中非常常用的一种表单元素,对于radio的操作中,都是利用radio的checked属性,都是对radio的checked属性做操作.获取radio的选中值时,遍历radio按钮项,找到被选中(checked)的状态的那个按钮,然后返回其值:给radio赋值时,找到对应的按钮项,将其checked属性置为true即可. 获取radio值 Method1 遍历radio集合 假如我们给定页面 <body> <p> <label for="Doo

javascript获取select,checkbox,radio的值

转发来自  博客园博主:肖品 博主的链接 1.获取和设置select,checkbox,radio的值 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"&

JavaScript获取浏览器高度和宽度值(documentElement,clientHeight,offsetHeight,scrollHeight,scrollTop,offsetParent,offsetY,innerHeight)

IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中:  document.body.clientWidth ==> BODY对象宽度 document.

javascript获取select 的id与值

<script type="text/javascript"> function showOptionId () { var type = document.getElementById ("select"); //获取select var typeId = type.options [type.selectedIndex].id; //获取option的ID var typeValue = type.options [type.selectedInde

使用javascript获取gridview中的textbox值

<body> <form id="form1" runat="server"> <div> <asp:gridview ID="GVReue" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1"> <Columns> <asp:T