Javascript:小心使用innerHTML

最近在做AJAX,想用javascript实现DataList功能,遇到一个棘手的问题,由于要生成的HTML很长,所以我写成如下的形式:

list.innerHTML="<table><tr>";

list.innerHTML+="<td>"

......

但是这样生成的innerHTML始终不对,研究了半天,原来是innerHTML搞得鬼.innerHTML自带了语法检查功能,他会自动把不完整的HTML代码补充完整.运行如下的一个测试代码就可以发现了.

document.getElementById("AlbumList").innerHTML="<table><tr>";
alert(document.getElementById("AlbumList").innerHTML);

他会自动把我的代码里面添加了<tbody>和</tr></table>等标记.神奇!!!

那么不让他自动填写的一个办法就是用一个中间变量:

var html="<table><tr>";

html+="<td>";

......

list.innerHTML=html;

就这样就可以解决问题了.

时间: 2024-10-27 21:20:40

Javascript:小心使用innerHTML的相关文章

在标记的HREF属性中javascript:alert(this.innerHTML)会怎么样?

原文:在标记的HREF属性中javascript:alert(this.innerHTML)会怎么样? <a href="javascript:alert(this.innerHTML)" mce_href="javascript:alert(this.innerHTML)">标签</a> 上面的这段代码不能得到你想要的结果,因为在<A>标记中href属性的this对象不是指代的当前的<A>标记, 这个时候的this是

javascript innerText和innerHtml应用_javascript技巧

看看代码 <head runat="server">    <title>无标题页</title>    <script language="javascript">        function ok(){            var txt=new Array();            txt.push("<strong>");            txt.push(&quo

javascript中innerText和innerHTML属性用法实例分析_javascript技巧

本文实例讲述了javascript中innerText和innerHTML属性用法.分享给大家供大家参考.具体分析如下: 几乎所有DOM元素都有innerText,innertHTML属性(注意大小写),分别是元素标签内 的文本表示形式和HTML源代码,这两个属性是可读可写的 innerHTML也可以取代createElement,属于简单,粗放型,后果自负的创建 <html xmlns="http://www.w3.org/1999/xhtml"> <head>

javascript innerHTML、outerHTML、innerText、outerText的区别_javascript技巧

1.功能讲解: innerHTML 设置或获取位于对象起始和结束标签内的 HTML outerHTML 设置或获取对象及其内容的 HTML 形式 innerText 设置或获取位于对象起始和结束标签内的文本 outerText 设置(包括标签)或获取(不包括标签)对象的文本 2.示例 <html> <head> <title>Demo</title> <style><!-- body {font-family:"宋体";

JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)_基础知识

JavaScript 输出 JavaScript 没有任何打印或者输出的函数. JavaScript 显示数据 JavaScript 可以通过不同的方式来输出数据: 使用 window.alert() 弹出警告框. 使用 document.write() 方法将内容写到 HTML 文档中. 使用 innerHTML 写入到 HTML 元素. 使用 console.log() 写入到浏览器的控制台. 使用 window.alert() 你可以弹出警告框来显示数据: <!DOCTYPE html>

JavaScript如何输出显示内容(document.write、alert、innerHTML、console.log)

JavaScript 输出 JavaScript 没有任何打印或者输出的函数. JavaScript 显示数据 JavaScript 可以通过不同的方式来输出数据: 使用window.alert()弹出警告框. 使用document.write()方法将内容写到 HTML 文档中. 使用innerHTML写入到 HTML 元素. 使用console.log()写入到浏览器的控制台. 使用 window.alert() 你可以弹出警告框来显示数据: <!DOCTYPE html> <htm

Step By Step 制作XML的Javascript树形目录

javascript|xml     很多地方都会用到树形目录,比如CSDN论坛的列表,这样的代码也有很多,但是很多人都是拿来主义,没有自己动手做个,下面我就和大家一起分享怎么来自己做一个XML做数据源的TreeMenu.从中你会看到很多有用的JS脚本和页面元素的一些重要但经常被我们忽略的属性用法.     Step1.倒着来,看看完成后的TreeMenu是什么样子的? JS脚本动态生成的HTML大纲,这个是动态生成的,页面源代码里没有 <div id="MyDiv">&l

innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解

  这篇文章主要介绍了javascript中的innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解,都是个人经验的总结,分享给大家,希望大家能够喜欢. innerHTML属性用来读取或设置某个节点内的HTML代码. outerHTML属性用来读取或设置HTML代码时,会把节点本身包括在内. textContent属性用来读取或设置节点包含的文本内容. innerText属性和outerText属性在读取元素节点的文本内容时,得到的值是不一样的

Javascript安全那些事

这篇文章有点长,如果你对JavaScript安全感兴趣,请耐心看下去 大纲 业务背景 JavaScript相关安全框架剖析 Why Caja 现状与将来 总结 背景 目前淘宝店铺系统,u站,品牌站,爱淘宝等业务,都开放第三方ISV/设计师在我们系统中编写JavaScript代码,用来完成动态效果和一些交互特性. Caja就是用来保证这个第三方在我们系统中编写JavaScript安全性的一个前端基础技术方案. 目前两个典型的业务场景 ISV的代码运行在我们系统内部 在我们系统中完全禁止ISV编写J