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的二级联动菜单实现代码
Apr 25 Javascript
JSON 数据格式介绍
Jan 13 Javascript
Google Map V3 绑定气泡窗口(infowindow)Dom事件实现代码
Apr 26 Javascript
深入理解JavaScript的React框架的原理
Jul 02 Javascript
jQuery中 delegate使用的问题
Jul 03 Javascript
js格式化时间的方法
Dec 18 Javascript
JavaScript操作class和style样式代码详解
Feb 13 Javascript
移动端翻页插件dropload.js(支持Zepto和jQuery)
Jul 27 Javascript
JavaScript实现审核流程状态的动态显示进度条
Mar 15 Javascript
vue2.0设置proxyTable使用axios进行跨域请求的方法
Oct 19 Javascript
vue-router两种模式区别及使用注意事项详解
Aug 01 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
Nov 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
php读取csv文件并输出的方法
2015/03/14 PHP
RR vs IO BO3 第一场2.13
2021/03/10 DOTA
QQ邮箱的一个文本编辑器代码
2007/03/14 Javascript
JQuery 学习笔记 选择器之五
2009/07/23 Javascript
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
JavaScript实现将数组中所有元素连接成一个字符串的方法
2015/04/06 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
jQuery实现的网格线绘制方法
2016/06/20 Javascript
js实现手机web图片左右滑动效果
2017/12/29 Javascript
Vue 创建组件的两种方法小结(必看)
2018/02/23 Javascript
详解vue 计算属性与方法跟侦听器区别(面试考点)
2018/04/23 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
基于Vue插入视频的2种方法小结
2019/04/02 Javascript
使用vue实现一个电子签名组件的示例代码
2020/01/06 Javascript
vue通过过滤器实现数据格式化
2020/07/20 Javascript
Python3处理HTTP请求的实例
2018/05/10 Python
windows下cx_Freeze生成Python可执行程序的详细步骤
2018/10/09 Python
Django objects的查询结果转化为json的三种方式的方法
2018/11/07 Python
numpy:找到指定元素的索引示例
2019/11/26 Python
python列表生成器迭代器实例解析
2019/12/19 Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
2020/03/10 Python
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
暇步士官网:Hush Puppies
2016/09/22 全球购物
Fox Racing官方网站:越野摩托车和山地自行车装备和服装
2019/12/23 全球购物
俄罗斯园林植物网上商店:Garshinka
2020/07/16 全球购物
北大自主招生自荐信
2013/10/19 职场文书
导游实习生自荐书
2014/01/28 职场文书
农贸市场管理制度
2014/01/31 职场文书
书香校园建设方案
2014/05/02 职场文书
新闻发布会活动策划方案
2014/09/15 职场文书
岗位职责范本大全
2015/02/26 职场文书
会议通知
2015/04/15 职场文书
创建文明城市倡议书
2015/04/28 职场文书
历史名人教你十五个读书方法,赶快Get起来!
2019/07/18 职场文书
python基础之文件操作
2021/10/24 Python
postgresql之greenplum字符串去重拼接方式
2023/05/08 PostgreSQL