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 相关文章推荐
web 页面分页打印的实现
Jun 22 Javascript
jquery 页面滚动到指定DIV实现代码
Sep 25 Javascript
利用javascript打开模态对话框(示例代码)
Jan 11 Javascript
对JavaScript中this指针的新理解分享
Jan 31 Javascript
Javascript中判断对象是否为空
Jun 10 Javascript
IE6兼容透明背景图片及解决方案
Aug 19 Javascript
jQuery实现简洁的导航菜单效果
Nov 23 Javascript
Bootstrap下拉菜单更改为悬停(hover)触发的方法
May 24 Javascript
Vue.js实现按钮的动态绑定效果及实现代码
Aug 21 Javascript
vue.js移动端app之上拉加载以及下拉刷新实战
Sep 11 Javascript
vue微信分享 vue实现当前页面分享其他页面
Dec 02 Javascript
Vue+Element实现表格编辑、删除、以及新增行的最优方法
May 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
PHP常用编译参数中文说明
2014/09/27 PHP
PHP实现下载断点续传的方法
2014/11/12 PHP
PHP PDOStatement::fetchObject讲解
2019/02/01 PHP
php 中self,this的区别和操作方法实例分析
2019/11/04 PHP
js传值 判断
2006/10/26 Javascript
JavaScript 面向对象之命名空间
2010/05/04 Javascript
jQuery编辑器KindEditor4.1.4代码高亮显示设置教程
2013/03/01 Javascript
javascript实现显示和隐藏div方法汇总
2015/08/14 Javascript
JavaScript学习笔记之数组随机排序
2016/03/23 Javascript
jquery实现简单的瀑布流布局
2016/12/11 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
2017/10/12 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
layui动态渲染生成左侧3级菜单的方法(根据后台返回数据)
2019/09/23 Javascript
vue 实现input表单元素的disabled示例
2019/10/28 Javascript
Python中列表的一些基本操作知识汇总
2015/05/20 Python
详解python时间模块中的datetime模块
2016/01/13 Python
python利用不到一百行代码实现一个小siri
2017/03/02 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
2018/05/11 Python
Python3转换html到pdf的不同解决方案
2019/03/11 Python
python版百度语音识别功能
2019/07/09 Python
Python实现基于SVM的分类器的方法
2019/07/19 Python
如何为Python终端提供持久性历史记录
2019/09/03 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
在PyCharm中实现添加快捷模块
2020/02/12 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
2020/04/08 Python
Python urllib.request对象案例解析
2020/05/11 Python
一款纯css3实现的tab选项卡的实列教程
2014/12/11 HTML / CSS
1688平价精选商城:阿里集团旗下,工厂出厂价格直销
2017/04/24 全球购物
英国时尚女装购物网站:Missguided
2018/08/23 全球购物
北京鼎普科技股份有限公司软件测试面试题
2012/04/07 面试题
专业实习自我鉴定
2013/10/29 职场文书
忠诚教育心得体会
2014/09/03 职场文书
如何写辞职书
2015/02/26 职场文书
寒假致家长的一封信
2015/10/10 职场文书
合理缓解职场压力,让你随时保持最佳状态!
2019/06/21 职场文书