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 相关文章推荐
jQuery .tmpl(), .template()学习资料小结
Jul 18 Javascript
js 为label标签和div标签赋值的方法
Aug 08 Javascript
jquery实现div阴影效果示例代码
Sep 16 Javascript
jQuery中.live()方法的用法深入解析
Dec 30 Javascript
jQuery DOM操作实例
Mar 05 Javascript
简单介绍JavaScript的变量和数据类型
Jun 03 Javascript
js弹出框、对话框、提示框、弹窗实现方法总结(推荐)
May 31 Javascript
ES6学习笔记之Set和Map数据结构详解
Apr 07 Javascript
JS关于刷新页面的相关总结
May 09 Javascript
前后端如何实现登录token拦截校验详解
Sep 03 Javascript
jQuery zTree插件使用简单教程
Aug 16 jQuery
在vue中把含有html标签转为html渲染页面的实例
Oct 28 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
smtp邮件发送一例
2006/10/09 PHP
php不使用插件导出excel的简单方法
2014/03/04 PHP
微信开发之网页授权获取用户信息(二)
2016/01/08 PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
2016/03/22 PHP
PHP实现支持加盐的图片加密解密
2016/09/09 PHP
PHP实现基于状态的责任链审批模式详解
2019/05/31 PHP
用JavaScript事件串连执行多个处理过程的方法
2007/03/09 Javascript
jQuery(非HTML5)可编辑表格实现代码
2012/12/11 Javascript
javascript删除数组元素并且数组长度减小的简单实例
2014/02/14 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
jQuery使用slideUp方法实现控制元素缓慢收起
2015/03/27 Javascript
JavaScript包装对象使用详解
2015/07/09 Javascript
jQuery实现页面点击后退弹出提示框的方法
2016/08/24 Javascript
Bootstrap 网站实例之单页营销网站
2016/10/20 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
详解nodejs 配置文件处理方案
2019/01/02 NodeJs
基于node+websocket+html实现腾讯课堂聊天室聊天功能
2020/03/04 Javascript
[01:01]2020完美高校联赛(秋)西安落幕
2021/03/11 DOTA
对Python协程之异步同步的区别详解
2019/02/19 Python
python查找重复图片并删除(图片去重)
2019/07/16 Python
Python 脚本实现淘宝准点秒杀功能
2019/11/13 Python
python实现局域网内实时通信代码
2019/12/22 Python
python3连接MySQL8.0的两种方式
2020/02/17 Python
Numpy中的数组搜索中np.where方法详细介绍
2021/01/08 Python
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
2020/08/24 HTML / CSS
SHEIN香港:价格实惠的女性时尚服装
2018/08/14 全球购物
德国最大的网上足球商店:11teamsports
2019/09/11 全球购物
环境工程大学生自荐信
2013/10/21 职场文书
采购主管的岗位职责
2013/12/17 职场文书
《小松树和大松树》教学反思
2014/02/20 职场文书
党员“一帮一”活动总结
2015/05/07 职场文书
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript
Java集成swagger文档组件
2021/06/28 Java/Android
oracle重置序列从0开始递增1
2022/02/28 Oracle
Mac电脑OS系统下安装Nginx的详细教程
2022/04/14 Servers