IE中getElementsByName()对有些元素无效的解决方案
document.getElementsByName('someName') 返回一个节点列表(数组)
注意:在IE下有些节点是没有name 属性的,就是用document.getElementsByName获取不到的。只有下面的tag有name属性:
A, APPLET, attribute, BUTTON, EMBED, FORM, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT type=hidden, INPUT type=image, INPUT type=password, INPUT type=radio, INPUT type=reset, INPUT type=submit, INPUT type=text, LINK, MAP, OBJECT, RT, RUBY, SELECT, TEXTAREA
其他都没有,比如 div,span等
替代方案:
前提:假定获取的节点数组的TagName一致。(一般也很少出现获取的节点数组中的节点来自不同Tag)
JSP代码段:
...... <logic:iterate id='t' name='dataList' > <tr class='list'> ...... <td class='normal'><span name='tbc'>${t.LOWAREATS_TBC }</span></td> ...... </tr> </logic:iterate> ......
javascript 代码段:
...... var tbcList = document.getElementsByTagName('span'); for(var i = 0; i < tbcList.length ; i++) { if(tbcList[i].name != 'tbc' ) continue; //......逻辑代码 } ......
相关推荐
-
IE中getElementsByName()对有些元素无效的解决方案
复制代码 代码如下: document.getElementsByName('someName') 返回一个节点列表(数组) 注意:在IE下有些节点是没有name 属性的,就是用document.getElementsByName获取不到的.只有下面的tag有name属性: A, APPLET, attribute, BUTTON, EMBED, FORM, IMG, INPUT type=button, INPUT type=checkbox, INPUT type=file, INPUT t
-
详解JavaScript 中getElementsByName在IE中的注意事项
详解JavaScript 中getElementsByName在IE中的注意事项 前言: 在IE5-9中是没有实现js的 getElementsByClassName()方法,但是实现了getElementsByName()方法,但是需要注意的是这个方法在IE5-9中也返回id属性匹配的指定元素,为了兼容,应该小心谨慎使用,不要将同样的字符串同时用作了名字和ID. 测试程序如下: <div id="log"> <div id="innerLog"&
-
关于jquery中动态增加select,事件无效的快速解决方法
近来做项目,用的jquery1.6.2库,当动态增加div 及select时,事件却不起作用. 查了一些资料,发现bind事件:向匹配元素附加一个或更多事件处理器.而live事件:为当前或未来的匹配元素添加一个或多个事件处理器. 其资料如下: [bind和live的区别] live方法其实是bind方法的变种,其基本功能就同bind方法的功能是一样的,都是为一个元素绑定某个事件,但是bind方法只能给当前存在的元素绑定事件,对于事后采用JS等方式新生成的元素无效,而live方法则正好弥补了bin
-
JS中appendChild追加子节点无效的解决方法
JS中appendChild追加子节点无效 有这么一段代码: let divs = document.getElementsByClassName('test'); let btn = document.createElement('div'); for(let i=0;i<divs.length;i++){ divs[i].appendChild(btn); } 表面上这段代码为每个 class属性为 test的元素添加一个 div子元素. 看起来没有什么问题,但是执行完之后却发现子元素并没有
-
详解如何在Angular中快速定位DOM元素
在使用Angular2+中,经常会想快速的去选择DOM上的某个元素,如果是刚上手Angular,有可能直接就使用原生DOM操作或者导入jQuery再进行DOM操作,既然都使用了Angular了,有没有更好的方法呢?答案是肯定的. 通过ElementRef 先上代码: import {Component, ElementRef, OnInit} from '@angular/core'; @Component({ selector: 'app-root', templateUrl: './app.
-
java删除数组中的某一个元素的方法
实例如下: package org.company.project.test; import java.util.Arrays; import java.util.Scanner; public class ArraysDelete { public static void main(String[] args) { //删除数组中的某一个元素的方法: //把最后一个元素替代指定的元素,然后数组缩容 Scanner sc =new Scanner(System.in); int[] arr =
-
php遍历类中包含的所有元素的方法
本文实例讲述了php遍历类中包含的所有元素的方法.分享给大家供大家参考.具体分析如下: 这里可获得php类包含的所有元素以key-value的形式输出 class MyTestClass{ const TESTVAR1 = 1001; const TESTVAR2 = 1002; const TESTSTR1 = 'hello'; } $rc = new ReflectionClass('MyTestClass'); $v = $rc->getConstants(); asort($v);//
-
php数组函数序列之array_pop() - 删除数组中的最后一个元素
array_pop()定义和用法 array_pop() 函数删除数组中的最后一个元素. 语法 array_pop(array)参数 描述 array 必需.规定输入的数组参数. 例子 复制代码 代码如下: <?php $a=array("Dog","Cat","Horse"); array_pop($a); print_r($a); ?> 输出: Array ( [0] => Dog [1] => Cat )
-
php获取数组元素中头一个数组元素值的实现方法
本文实例讲述了php获取数组元素中头一个数组元素值的实现方法.分享给大家供大家参考.具体如下: 在php的内置函数中,获取数组元素值的函数主要有 reset next current prev end 这几个函数. reset (PHP 3, PHP 4, PHP 5) 函数定义:mixed reset ( array &array ) 作用:该函数将 array 的内部指针倒回到第一个单元并返回第一个数组单元的值,如果数组为空则返回 FALSE,代码如下: 复制代码 代码如下: $array=
-
Python找出list中最常出现元素的方法
本文实例讲述了Python找出list中最常出现元素的方法.分享给大家供大家参考,具体如下: 假设一个list中保存着各种元素,需要统计每个元素出现的个数,并打印出最常出现的前三个元素分别是什么.list如下: 复制代码 代码如下: word_list =["is","you","are","I","am","OK","is","OK","
随机推荐
- ORACLE 如何查询被锁定表及如何解锁释放session
- Oracle数据库中SQL语句的优化技巧
- ExtJS下 Ext.Direct加载和提交过程排错小结
- Vue.js上下滚动加载组件的实例代码
- Python模拟登录12306的方法
- ASP.NET MVC下基于异常处理的完整解决方案总结
- JS实现跟随鼠标的链接文字提示框效果
- php数组函数序列之array_keys() - 获取数组键名
- 简单分析ucenter 会员同步登录通信原理
- ThinkPHP验证码使用简明教程
- 详解Docker如何启动一个Centos镜像
- 如何把图片也存到数据库中去?
- 基于JS快速实现导航下拉菜单动画效果附源码下载
- android 拍照和上传的实现代码
- JavaScript版DateAdd和DateDiff函数代码
- python机器学习实战之K均值聚类
- Java实现跨服务器上传文件功能
- java基于jcifs.smb实现远程发送文件到服务器
- python之DataFrame实现excel合并单元格
- Java设计模式之动态代理