用jquery写比较方便点。
答案完善了一下,代码如下。其实这样有bug,但是比较容易修改,只要完善一下function addtab() 就行。
<html><head>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
<script>
function addtab(){
var tcount=$("#tab tr").length
var tpl='<tr id="s'+tcount+'"><td>'+tcount+'</td><td>姓名</td><td>年龄</td><td onclick="deltab('+tcount+')">删除</td></tr>'
$("#tab").append(tpl)
}
function deltab(x){
$("#s"+x).remove()
}
</script>
</head>
<body>
<div>
<span onclick="addtab()">增加</span>
<table id="tab">
<tr>
<td>ID</td><td>姓名</td><td>年龄</td><td> *** 作</td>
</tr>
</table>
</div>
</body>
</html>
但是我的理解是,ID号应该是返回给后台,后台再给前台比较好。
首先定义一个闭包,如下:var appendText = function(){
//变量作用域为函数内部,外部无法访问
var html = ""
return {
getHtml : function(tmpNum){
html += "<input type='text' name='txt"+tmpNum+"'>"
return html
}
}
}()
然后修改你的代码
oTD.innerHTML = appendText.getHtml(tmpNum)
或者有兴趣的话可以学习一下Jquery,里面有相应方法很轻松地实现你的需求。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)