js 动态添加元素(div、li、img等)及设置属性的方法

JavaScript030

js 动态添加元素(div、li、img等)及设置属性的方法,第1张

把一串

html

标签赋给一个

javascript

变量,除属性的值要用转义的双引号外,某些时候字符串还很长,显得有些复杂。如果用

js

动态添加元素,就不会有那么复杂的字符串出现,代码阅读性强一点,也容易理解。

网页是由

html

标签一层层组成的,js

也可以动态添加一层层的诸如

div、li、img

这样的标签。其实,不管是什么

html

标签,js

动态创建的方法都差不多,接着就先从动态添加

div

开始。

一、js

动态添加元素div

<div

id="parent"></div>

function

addElementDiv(obj)

{

var

parent

=

document.getElementById(obj)

//添加

div

var

div

=

document.createElement("div")

//设置

div

属性,如

id

div.setAttribute("id",

"newDiv")

div.innerHTML

=

"js

动态添加div"

parent.appendChild(div)

}

调用:addElementDiv("parent")

二、js

动态添加li

<ul

id="parentUl"><li>原li</li></ul>

function

addElementLi(obj)

{

var

ul

=

document.getElementById(obj)

//添加

li

var

li

=

document.createElement("li")

//设置

li

属性,如

id

li.setAttribute("id",

"newli")

li.innerHTML

=

"js

动态添加li"

ul.appendChild(li)

}

调用:addElementLi("parentUl")

三、js

动态添加元素img

<ul

id="parentUl"></ul>

function

addElementImg(obj)

{

var

ul

=

document.getElementById(obj)

//添加

li

var

li

=

document.createElement("li")

//添加

img

var

img

=

document.createElement("img")

//设置

img

属性,如

id

img.setAttribute("id",

"newImg")

//设置

img

图片地址

img.src

=

"/images/prod.jpg"

li.appendChild(img)

ul.appendChild(li)

}

调用:addElementImg("parentUl")

以上这篇js

动态添加元素(div、li、img等)及设置属性的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

两个insert方法返回的就是被插入的对象,直接操作这两个对象就行了。

var tr = table.insertRow()var td = tr.insertCell()tr.setAttribute('align','center') '不用setAttribute而直接使用属性也可以.tr.setAttribute('bgcolor','#FF0000')

td.width=100  直接对属性赋值的作法。

要在tr元素的父元素中才能增加行,不能在tr本身去增加行。而tbody就是tr的父元素。如果是增加td,就要用tr,因为tr是td的父元素。

<script>// Last updated 2006-02-21 function addRowToTable() { var tbl = document.getElementById('tblSample')var lastRow = tbl.rows.length。

// if there's no header row in the table, then iteration = lastRow + 1

var iteration = lastRow。

var row = tbl.insertRow(lastRow)// left cell var cellLeft = row.insertCell(0)var textNode = document.createTextNode(iteration)cellLeft.appendChild(textNode)

// right cell var cellRight = row.insertCell。

var el = document.createElement('input')el.type = 'text'el.name = 'txtRow' + iterationel.id = 'txtRow' + iterationel.size = 40。

el.onkeypress = keyPressTestcellRight.appendChild(el)。