在项目中偶然遇到一个怪异的问题,我要利用javascript动态的向一个DIV中插入一些个TABLE,Firefox可以正常显示,而在IE下,无论版本是6或7,均无法看到这个TABLE。但是,如果我直接把TABLE的HTML代码写在页面上,一切都能正常显示。
最开始出问题的javascript脚本如下:
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元素,问题轻松解决!
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 td = document.createElement("td");
tr.appendChild(td);
分享到:
相关推荐
本案例中,我们关注的是如何利用XML作为数据传输格式,并通过JavaScript来动态创建表格。下面将详细阐述这一过程。 首先,XML(Extensible Markup Language)是一种用于标记数据的语言,它允许我们结构化地表示数据...
本文将详细讲解如何使用JavaScript实现输入框内上下左右键以及Enter键控制表格(table)中的光标移动,并在光标到达最后一个输入框时新增一行,确保这个功能在多个浏览器中都能正常工作。 首先,我们需要理解...
这个功能允许用户在不刷新整个页面的情况下添加新的记录,提高了用户体验。在这个例子中,我们将探讨如何利用JavaScript在HTML表格中实现动态添加行,并将数据提交到服务器进行存储。 首先,我们需要创建一个基本的...
本文将深入探讨“jquery append table问题在IE8下的解决方法”,结合给出的标签“源码”和“工具”,我们来详细讨论这个问题。 在jQuery中,`append()`函数是一个非常常用的方法,它允许我们在DOM(Document Object...
本资源“jQuery Table表格排序显示代码.zip”聚焦于利用jQuery实现动态表格排序的功能,这对于数据展示和用户交互至关重要。下面将详细阐述相关知识点。 1. **jQuery基础**:首先,理解jQuery的基础是至关重要的。...
然后再插入到新table中: if(this._nTable.firstChild){ this._nTable.replaceChild(nT, this._nTable.firstChild); }else{ this._nTable.appendChild(nT); } 因为程序允许修改克隆的tr,所以会判断有没有插入过...
在Web开发中,表格(table)是展示数据的基础元素。为了提高视觉效果,有时需要在表格表头中添加斜线来区隔不同的表头内容。实现斜线表头有多种方法,下面将详细介绍这五种方法的实现原理和适用场景。 1. 图片背景...
9.36 使用JavaScript向表格中写入数据 9.37 类C# GridView的编辑效果(一) 9.38 类C# GridView的编辑效果(二) 第10章 单选框和复选框 10.1 选择了哪一个单选框 10.2 单击文字实现单选框的选定 10.3 被选中的复选...
本示例主要讲解如何使用JavaScript读取XML文件,并在浏览器环境中,无论是在Internet Explorer(IE)还是Firefox等其他浏览器上,以表格(table)的形式展示这些数据。以下是一种实现方法: 首先,我们需要了解XML...
使用JavaScript,我们可以根据需求在运行时动态地向表格中添加行。通常涉及以下步骤: 1. 获取表格对象:通过DOM(Document Object Model)接口,如`document.getElementById`或`document.querySelector`来获取`...
9.36 使用JavaScript向表格中写入数据 9.37 类C# GridView的编辑效果(一) 9.38 类C# GridView的编辑效果(二) 第10章 单选框和复选框 10.1 选择了哪一个单选框 10.2 单击文字实现单选框的选定 10.3 被选中的复选...
在Firefox等其他浏览器中,`innerHTML`通常可以正常工作,但在IE的兼容模式下,尝试更改`table`、`thead`、`tfoot`、`tbody`、`tr`、`col`、`colgroup`、`html`、`title`、`style`、`frameset`等元素的`innerHTML`时...
- **Eolas专利问题**:IE6存在一个名为Eolas的插件交互专利问题,可能导致网页中嵌入的Flash、Java Applet等无法正常交互,需要应用补丁或更新来解决。 4. **JavaScript库**:如`DD_belatedPNG`,这类库用于增强...
- **兼容性处理**:为了确保代码能够在不同版本的IE浏览器中正常运行,开发者在生成隐藏的select容器时做了特殊处理。对于IE5.5以下版本,不会生成`<iframe>`元素,这是因为早期版本的IE可能无法正确支持`<iframe>`...
在JavaScript中,我们可以利用DOM(Document Object Model)接口来操作这些元素,包括获取、修改和删除等。 1. **事件监听**: 实现拖动功能的关键在于对鼠标事件的监听。我们需要绑定`mousedown`(鼠标按下)、`...
使用JavaScript,我们可以动态创建这些元素并插入到文档中。例如: ```javascript // 创建一个新的表格 var table = document.createElement('table'); // 创建一行 var row = document.createElement('tr'); // ...
当创建HTML表格时,一些现代浏览器(如Chrome、Firefox等)允许直接向`<table>`元素添加`<tr>`元素,但在Internet Explorer(尤其是较老版本的IE)中,这种做法会导致渲染问题。为了解决这一问题,应始终使用`...