通过jQuery来,动态创建表格,增加,以及 删除某一行,以及全选,取消全选,删除选中行等操作,加强jquery 操作dom 对象的能力
页面代码
- <body>
- <h2 align="center">jquery 实现动态表格的创建及列表全选等操作</h2>
- <div align="center">
- 编号:<input id="tId" type="text" />
- 名称:<input id="name" type="text" />
- 价格:<input id="price" type="text" />
- <input id="add" type="button" value="添加" />
- <br />
- <br />
- </div>
- <table id="tab" width="80%" align="center" cellspacing="0" border="1" bordercolor="#a0c6e5">
- <tbody id="tbody">
- <tr align="center">
- <td><input type="checkbox" /></td>
- <td>编号</td>
- <td>名称</td>
- <td>价格</td>
- <td>操作</td>
- </tr>
- <tr align="center">
- <td><input type="checkbox" /></td>
- <td>001</td>
- <td>java</td>
- <td>36.5</td>
- <td><input type="button" value="delete"></td>
- </tr>
- </tbody>
- </table>
- <br>
- <br>
-
- <div align="center">
- <input id="selectAll" type="button" value="全选" />
- <input id="cancelSelect" type="button" value="取消选中" />
- <input id="deleteSelect" type="button" value="删除选中" />
- <br />
- <br />
- </div>
- </body>
js 代码
- <script type="text/javascript" src="./js/jquery-1.6.4.js"></script>
- <script type="text/javascript">
- $(function(){
- $("#add").click(function(){ //为 按钮添加事件
- //获取值
- var tId = $("#tId").val();
- var name = $("#name").val();
- var price = $("#price").val();
-
- // 创建 td 对象 并将相应的值插入
- var cbTd = $("<td><input type='checkbox' /></td>");
- var idTd = $("<td></td>").text(tId);
- var nameTd = $("<td></td>").text(name);
- var priceTd = $("<td></td>").append(price);
- var acTd = $("<td><input type='button' value='delete' /></td>");
-
- //创建 tr 对象将td 对象放入 tr, 再将tr 加入 tbody
- var tr = $("<tr></tr>").append(cbTd).append(idTd).append(nameTd).append(priceTd).append(acTd).attr("align","center");
- $("#tbody").append(tr);
- });
-
- //对 每个删除按钮绑定 删除事件
- // 这种 将一组 对象 后加 click 事件,只能将原有的 对象绑定上 事件, 新添加的绑定不了 需要 使用 live/on 方法
- /*
- $("input[value='delete']").click(function(){
- $(this).parent().parent().remove();
- });
- */
- // js 1.9 已经将 live 换位 on
- $("input[value='delete']").live("click",function(){
- $(this).parent().parent().remove();
- });
-
- //全选
- $("#selectAll").click(function(){
- $("input[type='checkbox']").attr("checked",true);
- });
-
- //取消全选
- $("#cancelSelect").click(function(){
- $("input[type='checkbox']:checked").attr("checked",false);
- });
-
- //删除选中
- /* 1.
- $("#deleteSelect").click(function(){
- $("input[type='checkbox']:checked").parent().parent().remove();
- });
- */
- //2. 遍历
- $("#deleteSelect").click(function(){
- var chks = $("input[type='checkbox']:checked");
- $.each(chks,function(i,ck){
- $(ck).parent().parent().remove();
- })
- });
- });
- </script>
效果图:

|