JavaScript中为元素加上name属性的方法


Posted in Javascript onMay 09, 2011

今天遇到个小问题, 在构建 DOM 时, IE 中不能通过 element.setAttribute('name', _variable); 和 element.name = _variable; 这样的形式来为元素加上 name 属性, 无论是 IE6 还是 IE7. (IE8 是可以的, 但 IE8rc1 不行)

后来我查看了 MSDN, 得到信息如下:

Internet Explorer 8 and later can set the NAME attribute at run time on elements dynamically created with the createElement method. To create an element with a NAME attribute in earlier versions of Internet Explorer, include the attribute and its value when using the createElement method.

也就是说, 我们必须通过带属性和值的标签来创建有 name 属性的元素. 为求各浏览器兼容良好, 代码可以这样写:
var element = null; 
try { 
// IE6/IE7 构建方式 
element = document.createElement('<input name="radio-button">'); 
} catch (e) { 
// W3C 构建方式 
element = document.createElement('input'); 
element.name = 'radio-button'; 
} 
// 定义其他属性 
element.id = 'radio-1' 
element.type = 'radio';

以前我是一个 Java 开发人员, 实际工作中 JavaScript 的代码量其实不多, 在自己的一些小应用中往往只是小打小闹, 会 (潜意识地) 避开一些可能出问题的地方, 像跨域使用 AJAX, IE 内存泄漏这样的问题很少回去考虑. 但在转做 UED 后, JavaScript 和交互应用肯定会成为我以后的工作重点, 发生大小各异问题的机会相当多 (现在几乎每天都有), 在解决各种问题的过程中, 我痛并快乐着. 本着不瞎搞, 少折腾的原则, 有必要把这些记录一下, 为自己备份, 更能与人分享.
Javascript 相关文章推荐
解密效果
Jun 23 Javascript
syntaxhighlighter 使用方法
Jul 02 Javascript
发布BlueShow v1.0 图片浏览器(类似lightbox)blueshow.js 打包下载
Jul 21 Javascript
Javascript与flash交互通信基础教程
Aug 07 Javascript
制作高质量的JQuery Plugin 插件的方法
Apr 20 Javascript
js控制href内容的连接内容的变化示例
Apr 30 Javascript
Bootstrap开关(switch)控件学习笔记分享
May 30 Javascript
判断数组的最佳方法(推荐)
Oct 11 Javascript
Vue.js开发环境搭建
Nov 10 Javascript
讲解vue-router之什么是动态路由
May 28 Javascript
微信小程序实现动态列表项的顺序加载动画
Jul 25 Javascript
Vue使用Clipboard.JS在h5页面中复制内容实例详解
Sep 03 Javascript
JavaScript 放大镜 移动镜片效果代码
May 09 #Javascript
JavaScript 放大镜 放大倍率和视窗尺寸
May 09 #Javascript
关于JavaScript的with 语句的使用方法
May 09 #Javascript
JavaScript的parseInt 取整使用
May 09 #Javascript
实现变速回到顶部的JavaScript代码
May 09 #Javascript
Javascript 倒计时源代码.(时.分.秒) 详细注释版
May 09 #Javascript
Chrome Form多次提交表单问题的解决方法
May 09 #Javascript
You might like
单位速度在实战中的运用
2020/03/04 星际争霸
用PHP实现WEB动态网页静态
2006/10/09 PHP
用PHP调用数据库的存贮过程!
2006/10/09 PHP
PHP操作XML作为数据库的类
2010/12/19 PHP
php图片上传存储源码并且可以预览
2011/08/26 PHP
PHP以及MYSQL日期比较方法
2012/11/29 PHP
PHP实现变色验证码实例
2014/01/06 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
2014/08/21 PHP
基于jquery实现的服务器验证控件的启用和禁用代码
2010/04/27 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
jquery删除ID为sNews的tr元素的内容
2014/04/10 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
javascript检测两个数组是否相似
2015/05/19 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
2015/12/03 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
浅析vue.js数组的变异方法
2018/06/30 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
vue项目中使用Svg的方法
2018/10/24 Javascript
Vue 表情包输入组件的实现代码
2019/01/21 Javascript
如何使用JavaScript检测空闲的浏览器选项卡
2020/05/28 Javascript
[01:01:22]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
Python优先队列实现方法示例
2017/09/21 Python
python基础教程项目三之万能的XML
2018/04/02 Python
Python实现自定义函数的5种常见形式分析
2018/06/16 Python
Python获取好友地区分布及好友性别分布情况代码详解
2019/07/10 Python
django日志默认打印request请求信息的方法示例
2020/05/17 Python
CSS3的transition和animation的用法实例介绍
2014/08/20 HTML / CSS
CSS3色彩模式有哪些?CSS3 HSL色彩模式的定义
2016/04/26 HTML / CSS
基于html5 canvas实现漫天飞雪效果实例
2014/09/10 HTML / CSS
IMPORT的选项IGNORE有什么作用?缺省是什么设置?
2015/09/17 面试题
中学生关于梦想的演讲稿
2014/08/22 职场文书
导游词之淮安明祖陵
2019/11/25 职场文书
python使用PySimpleGUI设置进度条及控件使用
2021/06/10 Python
CSS中float高度塌陷问题的四种解决方案
2022/04/18 HTML / CSS
react中useState使用:如何实现在当前表格直接更改数据
2022/08/05 Javascript