易截截图软件、单文件、免安装、纯绿色、仅160KB

利用Javascript向页面中插入TABLE,IE下无法正常显示

利用Javascript向页面中插入TABLE,IE下无法正常显示
关键字: table, appendchild, ie, firefox
在项目中偶然遇到一个怪异的问题,我要利用javascript动态的向一个DIV中插入一些个TABLE,Firefox可以正常显示,而在IE下,无论版本是6或7,均无法看到这个TABLE。但是,如果我直接把TABLE的HTML代码写在页面上,一切都能正常显示。
最开始出问题的javascript脚本如下:
Js代码
var div = document.getElementById("container");       
var table = document.createElement("table");       
div.appendChild(table);       
var tr = document.createElement("tr");       
table.appendChild(tr);       
var td = document.createElement("td");       
tr.appendChild(td);     
var div = document.getElementById("container");
var table = document.createElement("table");
div.appendChild(table);
var tr = document.createElement("tr");
table.appendChild(tr);
var td = document.createElement("td");
tr.appendChild(td);
 
乍一看,代码比较干净,为什么在IE下就无法显示呢?其实,问题就出在IE的遍历页面中JS构造的DOM元素的时候,是一个按DOM树结构寻址的。如果漏掉了TABLE的TBODY元素,IE是无法显示这个TABLE的,中间加入一个TBODY元素,问题轻松解决!
Js代码
var div = document.getElementById("container");       
var table = document.createElement("table");       
div.appendChild(table);       
var body = document.createElement("tbody");       
table.appendChild(body);       
var tr = document.createElement("tr");       
body.appendChild(tr);       
var 


相关文档:

javascript单引号和双引号区别

javascript单引号和双引号区别2009-08-27 10:13在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:

IE提示出错后,再漫不经心地改为:

结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:

但为什么javascript中的转义字符\没有效果了呢 ......

JavaScript Table排序


JavaScript Table排序
序二(09/05/03)
近来还是那么忙,趁五一更新一下程序吧。
这个版本主要增加和改进了以下东西:
1,对字符串改用localeCompare来比较;
2,一次排序中能使用多个排序对象(用于值相等时再排序);
3,修正一些发现的问题;
4,改进程序结构,个人觉得是更灵活更方便了;
5,增加bool类型比 ......

常用的JavaScript验证正则表达式(转载)


下面都是我收集的一些比较常用的正则表达式,因为平常可能在表单验证的时候,用到的比较多。特发出来,让各位朋友共同使用。呵呵。
匹配中文字符的正则表达式: [u4e00-u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
匹配双字节字符(包括汉字在内):[^x00-xff]
评注:可以用来计算字符串的长度(一 ......

JavaScript之正则

定义方法:
1、用构造函数RegExp
2、直接量,包含在一对(/)之间的字符
直接量字符:
字母数字字符——自身
\o——NULL字符
\t——制表符
\n——换行符
\v——垂直制表符
\f——换页符
\r——回车符 ......

Java版的实现JavaScript中的eval()函数

实现步骤:
1.自定义一个Java类,该Java类中定义一个方法来包含需要被运行的代码。
2.动态编译刚刚生成的Java源码,不在磁盘上生成源码,而是直接编译内存中的Java源码。
3.动态加载刚刚创建编译的Java二进制码,编译好的Java二进制码不是在磁盘上,而是放在内存中,并定义自己的类加载器,负责加载内存中的class文件。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号