`
lj6684
  • 浏览: 957394 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

IE创建动态表格注意事项

    博客分类:
  • Web
阅读更多
因为工作需要,要创建可定制化页面,JS库选择mootools

最开始在Ubuntu下开发,浏览器使用FF,一切进展非常顺利,mootools库也很好用,比较顺利完成示例页面开发。可是当把页面拿到windows下IE环境执行时,噩梦开始了!!!

经过多方查找资料,朋友帮助,终于在IE下将示例页面调试成功,把其中的经验总结如下:

首先mootools库中的对象和方法是完全跨浏览器的,不存在mootools对浏览器不兼容的情况(之前还傻呼呼的认为mootools中是不是有些方法,IE中不支持啊);

IE创建动态表格注意事项:
1. IE中<tr>对象不能直接添加到<table>标签中,需要借助<tbody>标签,<table>中嵌入<tbody>,<tr>对象添加到<tbody>中,一切OK;

2. IE中对text文本输入框取值和select列表选择框取值的方式完全不一样。(人家FF可是兼容的非常好,一行$(element).value全部搞定!)
判断元素类型 $(element).type = text(文本框)|select-one(列表框)
IE取文本值   $(element).value
IE取列表值   $(element).options($(element).selectIndex).value

3. IE中动态创建出来的Button,onclick事件在构造Element时直接指定无效;至于是什么原因不知道,解决办法,先构造元素,再指定onclick事件
var button = new Element("input", {
  "id": "bt_" + id,
  "type": "button",
  "value": "remove"				
});
button.onclick = function remove() {
  var element = $("tr_" + id);
  element.dispose();
};


4. 最关键也是最难定位的BUG,IE中JS脚本里自定义变量千万不要使用 type, value 这类名称,可能跟IE识别的关键字有冲突(或者和mootools配合后识别有冲突)
var value = $(element).value; //报错,这个问题找了N久
var val = $(element).value; //把变量名value换成val,世界平静了...


附:
js脚本扩展String支持replaceAll方法
String.prototype.replaceAll = stringReplaceAll;

function stringReplaceAll(AFindText, ARepText){
  raRegExp = new RegExp(AFindText, "g");
  return this.replace(raRegExp, ARepText);
}
  • demo.rar (21.3 KB)
  • 描述: 示例页面
  • 下载次数: 5
分享到:
评论

相关推荐

    HTML5与CSS3基础教程(第8版)高清文字

    11.1 开始布局的注意事项 203 11.2 构建页面 204 11.3 在旧版浏览器中为HTML5元素添加样式 206 11.4 对默认样式进行重置或标准化 208 11.5 盒模型 209 11.6 控制元素的显示类型和可见性 211 11.7...

    精通JS脚本之ExtJS框架.part2.rar

    1.2.3 注意事项 1.3 基础语法 1.3.1 数据类型 1.3.2 变量与常量 1.3.3 运算符 1.4 流程控制语句 1.4.1 if条件语句 1.4.2 switch条件语句 1.4.3 while循环语句 1.4.4 do while循环语句 1.4.5 for循环语句 ...

    精通JS脚本之ExtJS框架.part1.rar

    1.2.3 注意事项 1.3 基础语法 1.3.1 数据类型 1.3.2 变量与常量 1.3.3 运算符 1.4 流程控制语句 1.4.1 if条件语句 1.4.2 switch条件语句 1.4.3 while循环语句 1.4.4 do while循环语句 1.4.5 for循环语句 ...

    asp.net知识库

    .net 2.0 访问Oracle --与Sql Server的差异,注意事项,常见异常 Ado.net 与NHibernate的关系? 动态创建数据库 SQL Server数据库安全规划全攻略 .net通用数据库访问组件SQL Artisan应用简介1 在Framework1.0下...

    delphi 开发经验技巧宝典源码

    0033 调用Register过程的注意事项 24 0034 在Delphi中禁止使用result 24 0035 如何在Delphi中录制代码 24 0036 如何编译器会提示数组太大时的处理技巧 25 0037 如何对超大数字进行计算 25 0038 强类型的...

    delphi 开发经验技巧宝典源码06

    0033 调用Register过程的注意事项 24 0034 在Delphi中禁止使用result 24 0035 如何在Delphi中录制代码 24 0036 如何编译器会提示数组太大时的处理技巧 25 0037 如何对超大数字进行计算 25 0038 强类型的...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    下面的表格概要列出了元素的规则: 2.元素规则表: Symbol 含义 举例 #PCDATA 包含字符或文本数据 (#PCDATA)&gt; 元素MYFILE包含一个文本数据 #PCDATA, element-name 包含文本和其它子元素 (#PCDTATA,TITLE)&gt; MYFILE...

    网管教程 从入门到精通软件篇.txt

     注意:使用 bootcfg /rebuild 之前,应先通过 bootcfg /copy 命令备份 boot.ini 文件。  bootcfg /scan 扫描用于 Windows 安装的所有磁盘并显示结果。  注意:这些结果被静态存储,并用于本次会话。如果在...

    iSee视频监控 v5.2

    注意事项 首先,感谢您选用我公司最新产品。 在使用本监控卡之前,请详细阅读本说明书所涉及的相关事项,熟悉 硬件、软件各部分的功能后,方能使用,以确保该系统为您发挥最佳功能。 否则一切后果自负。 ...

Global site tag (gtag.js) - Google Analytics