HTML 表格添加删除问题

HTML 表格添加删除问题,第1张

楼主的代码写的要注意兼容和规范性。

核心代码:

<script type="text/javascript">

function removeTable(){

var objDiv = document.getElementById("divid")

var vtables = objDiv.childNodes//

if (vtables.length >0)

objDiv.removeChild(vtables[vtables.length - 1])

}

</script>

<input type="button" value="删除表格" onclick="javascript:removeTable()" />

===============================================

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>Untitled Document</title>

<script type="text/javascript">

function createTable(){

var objDiv = document.getElementById("divid")

var vtable=document.createElement("table")

// vtable.id="idTB"

vtable.cellPadding="0",

vtable.cellSpacing="0"

vtable.border="1"

vtable.color="#000000"

vtable.borderColorDark="#000000"

vtable.borderColorLight="#FFFFFF"

for(i=0i<1i++){

var vtr=vtable.insertRow(i)//insertRow插入行

for(k=0k<5k++){

vtd=vtr.insertCell(k)//insertCell插入列

vtd.innerHTML="<input type=text style='border:0px solid'>"// InnerHtml 是用来获取或设置位于指定的服务器控件的开始标记和结束标记之间的内容。

}

}

objDiv.appendChild(vtable)//appendChild方法可向节点的子节点列表的末尾添加新的子节点。此方法可返回这个新的子节点。

}

function mouseDown(){

if(event.button==2) {

if(event.srcElement.tagName="INPUT"){ //srcElement 对于生成事件的 Window 对象、Document 对象或 Element 对象的引用。

//tagName 属性返回被选元素的标签名。

window.confirm(event.srcElement.value)

}

}

}

document.onmousedown=mouseDown//onmousedown 事件会在鼠标按键被按下时发生

document.captureEvents(Event.MOUSEDOWN)

/* function RemoveRow()

{

oTR=idTB.rows(idTB.rows.length-1)

oTR.removeNode(true)

} */

function removeTable(){

var objDiv = document.getElementById("divid")

var vtables = objDiv.childNodes//

if (vtables.length >0)

objDiv.removeChild(vtables[vtables.length - 1])

}

</script>

</head>

<input type="button" value="创建表格" onclick="javascript:createTable()" />

<input type="button" value="删除表格" onclick="javascript:removeTable()" />

<!-- <input type="button" onclick="RemoveRow()" value="减一行">-->

<div id="divid"></div>

<body>

</body>

</html>

几点意见:

1.象1楼说的,<div id="divid"></div>应该放在body里。

2.<script标签的属性不对。

3.直接引用id当作对象本身只在IE下有效,应该用document.getElementById("")来获取对象。

其他你看我给你的页面吧,已经在DW里优化过了。

<table border="1">

<tr>

<td>姓名</td>

<td>地址</td>

</tr>

<tbody id="mainbody">

<tr id="delCell">

<td>name</td>

<td>address</td>

</tr>

</tbody>

</table>

取得tbody的元素var mailbody = document.getElementById("mainbody"),

接着取得要删除行的元素var cell = document.getElementById("delCell")

最后就是从tbody中移去要删除的行就可以了mainbody.removeChild(cell)

完整的代码如下:

<html>

<head>

<title>动态删除表格的行</title>

<script type="text/javascript">

function deleteCell(){

var mailbody = document.getElementById("mainbody")

var cell = document.getElementById("delCell")

if(cell!=undefined){

mainbody.removeChild(cell)

}

}

</script>

</head>

<body>

<table border="1">

<tr>

<td>姓名</td>

<td>地址</td>

</tr>

<tbody id="mainbody">

<tr id="delCell">

<td>name</td>

<td>address</td>

</tr>

</tbody>

</table>

<input type="button" value="删除" onclick="deleteCell()"/>

</body>

<html>

不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI

<# :

cls

@echo off

rem 将一个html文件内的指定字符串内容删除

set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4

title %#% +%$%%$%/%@% %z%

cd /d "%~dp0"

powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312')))) -Args '%~f0'"

echo%#% +%$%%$%/%@% %z%

pause

exit

#>

$htmlfile="D:\xxx\index.html"

$self=get-item -liter $args[0]

$path=$self.Directory.FullName

$enc=New-Object System.Text.UTF8Encoding $False

$text=[IO.File]::ReadAllText($htmlfile, $enc)

$text=$text.replace('<base href="/">', '')

[IO.File]::WriteAllText($htmlfile, $text, $enc)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11509764.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存