
<head>
<title></title>
<style type="text/css">
table {
width: 100%
align: center
border: solid 1px black
}
table td {
width: 20%
text-align: center
border: solid 1px black
}
</style>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#add").click(function(){
$("table tr:last-child").after
("<tr><td> </td><td> </td><td> </td><td> </td><td> </td></tr>")
})
$("#cut").click(function(){
var value=$("table tr").length
if(value!=2){
$("table tr:last-child").remove()
}
})
})
</script>
</head>
<body>
<table id="table">
<tr>
<td colspan="5">供应商信息</td>
</tr>
<tr>
<td>序号</td>
<td>供应商</td>
<td>地址</td>
<td>联系人</td>
<td>联系电话</td>
</tr>
</table>
<input id="add" type="button" value="增加">
<input id="cut" type="button" value="减少">
</body>
</html>
注:jquery.js自已可以在网上下载,它们放在同一个目录下的。
htm给table标签动态添加 tr(行),具体参考代码如下:<html>
<head>
<title>usually function</title>
<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />
</head>
<script type="text/javascript" src="jquery-1.4.4.js"></script>
<body>
<table border="1px" id="targetTable">
<tr border="1px">
<td>序号</td>
<td>姓名</td>
<td>年龄</td>
<td>生日</td>
<td>备注</td>
</tr>
<tr id="model" style="display:none" border="1px">
<td></td>
<td><input type="text" name="username"></td>
<td><input type="text" name="age"></td>
<td><input type="text" name="birthday"></td>
<td><input type="text" name="note"><span onclick="del(this)">删除</span></td>
</tr>
</table>
<br>
<br>
用户输入表单:
姓名<input type="text" name="u_username"><br>
年龄<input type="text" name="u_age"><br>
生日<input type="text" name="u_birthday"><br>
备注<input type="text" name="u_note"><br>
<button onclick="add()" style="font-size:12px">添加</button>
</body>
<html>
<script>
function del(obj){
//alert($(obj).closest("tr").attr("outerHTML"))
//$(obj).closest("tr").attr("outerHTML","")
$(obj).closest("tr").remove()
resetSequenceNum()
}
function add(){
//获取表单的值
var u_username = $("input[name='u_username']").val()
var u_age = $("input[name='u_age']").val()
var u_birthday = $("input[name='u_birthday']").val()
var u_note = $("input[name='u_note']").val()
//alert(u_username)
//判断表单的值是否为空
if(u_username=="" || u_username==undefined){
alert("用户姓名不能为空")
$("input[name='u_username']").focus()
return false
}
//缓存要赋值的内容,避免多次查询,提高效率
var trstr = $("#model").attr("outerHTML")
//alert(trstr)
//复制最后一行的代码添加到表的最后一行
$("#targetTable tr").last().after(trstr)
//$("#targetTable").find("tr").last().after(trstr)
//让最后一行显示出来,而不是隐藏
//$("#targetTable tr").last().css("display","block")会出现浏览器兼容的问题,在ff中显示不正常
$("#targetTable tr").last().css("display","")
//赋值
var target = $("#targetTable tr").last().find("td")
target.find("input[name='username']").val(u_username)
target.find("input[name='age']").val(u_age)
target.find("input[name='birthday']").val(u_birthday)
target.find("input[name='note']").val(u_note)
resetValue()
resetSequenceNum()
}
//清空表单的值
function resetValue(){
$("input[name='u_username']").val("")
$("input[name='u_age']").val("")
$("input[name='u_birthday']").val("")
$("input[name='u_note']").val("")
}
//重新设置序号
function resetSequenceNum(){
var num=0
$("#targetTable tr").each(function(index,dom){
if(index!=0){
$(dom).find("td").first().html(num)
num++
}
})
}
</script>
一、动态加载表格1.首先在html中为表格的添加位置设置id
即是在html的body标签内部写一个div标签表明表格要添加到此div的内部。如下
<div id="tdl"><div>
2.在javascript中写添加表格的语句
若在当前html文件中,则写在<script>标签内部,如
复制代码 代码如下:
<script type="text/javascript" >
document.getElementById("tbl").innerHTML="<table><tr><td></td></tr></table>" //此处添加的表格可根据自己需要创建
</script>
若是通过引入js文件,则在js文件(假设是test.js)中直接写如下语句
复制代码 代码如下:
document.getElementById("tbl").innerHTML="<table><tr><td></td></tr></table>"
然后再引入自己的html文件
复制代码 代码如下:
<script type="text/javascript" src="test.js"></script>
二、 动态添加表格行
1.首先在html中为表格行的添加位置设置id,此位置必须是<tbody>内部(不是特别准确,但根据我的测试就得到此结论,有其他的方法请留言,谢谢),如下
复制代码 代码如下:
<table>
<thead></thead>
<tfoot><tfoot>//tfoot与thead是与tbody配套使用,但我在写的时候,没用也可以。
<tbody id="rows"></tbody>
</table>
[\s\S ]*\n
2.在javascript内容中,要先创建行和单元格,再在<.tbody>中添加行,如下
[code]
row=document.createElement("tr")//创建行
td1=document.createElement("tr")//创建单元格
td1.appendChild(document.createTextNode("content"))//为单元格添加内容
row.appendChild(td1)//将单元格添加到行内
document.getElementById("rows").append(row)//将行添加到<tbody>中
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)