`
pouyang
  • 浏览: 324017 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JS example:点击按钮table增加一行,删除一行

 
阅读更多

      点击添加按钮给table增加一行,有两种方法,一种是通过js控制添加;另一种就是直接用html元素和innerHTML,在这里我主要是说的用js来控制,因为这种易于调整。在这里要了解的这几个知识点, appendChild, firstChild, cloneNode(false or true), chidNodes,  childNodes[i], style = "display:none", innerHTML , toString(), typeof.nowrap,size(input框显示大小),maxlength(input框输入大小)

思路:

1 显示table

2 模板table(隐藏style="display:none")

3 点击添加按钮触发事件

    将模板table的一行添加到显示table中去

  (table1.firstChild.appendChild(table2.firstChild.firstChild.cloneNode(true)))

例子:

   

<script>
//给table增加一行
function addTableRow() {
	var table1 = document.getElementById('table1');
	var cloneTab = document.getElementById('table2');
	//alert(cloneTab.firstChild.firstChild.innerHTML);
    //alert(cloneTab.firstChild.firstChild.cloneNode(true).innerHTML);
	table1.firstChild.appendChild(cloneTab.firstChild.firstChild.cloneNode(true));

	var v= table1.firstChild.childNodes;
	var len = v.length;
	for(var i=1;i<len;i++){
		v[i].childNodes[0].firstChild.id=i;//给第一个单元格id赋值
	}
}

//给table删除一行
function delTableRow(){
	var table1 = document.getElementById('table1');
	var isChecked = document.getElementsByName('isChecked');
	var len = isChecked.length;
	for(var i=len-1;i>=0;i--){
		if(isChecked[i].checked==true){
			 table1.firstChild.removeChild(isChecked[i].parentNode.parentNode);
			//alert(isChecked[i].id);
			//alert(isChecked[i].parentNode.parentNode.innerHTML);
		}
	}
}
</script>

《
<!--显示table-->
 <table border="0" cellpadding="0" cellspacing="0" class="datalist" id="table1">
    <tr>
      <th width="38" nowrap="nowrap" style="width: 5%">0</th>
      <th width="38" nowrap="nowrap" >00</th>
      <th width="79" nowrap="nowrap" scope="col">1</th>
      <th width="70" nowrap="nowrap" scope="col">2</th>
      <th width="69" nowrap="nowrap" scope="col">3</th>
      <th width="66" nowrap="nowrap" scope="col">4</th>
      <th width="94" nowrap="nowrap" scope="col">5</th>
      <th width="107" nowrap="nowrap" scope="col">6</th>
    </tr>
</table>

<!--控制table的按钮-->
  <table>
      <tr align="center">
        <td colspan="10">
          <input type="button"  value="增加" onclick= "addTableRow();"/> 
          <input type="button"  value="删除" onclick="delTableRow();"/>
        </td>
     </tr>
  </table>

<!--模板table也叫做clone table style = "display:none"-->
  <table id='table2' style="display: none">
  <tr>
    <th><input type="checkbox" name="isChecked" /><input type="hidden" size="6" value=""/></th>
    <th width="38" nowrap="nowrap" style="width: 5%"><input type="text" size="16" maxlength="50" value=""/></th>
    <th width="79" nowrap="nowrap" scope="col"><input type="text"  size="16" maxlength="50" value=""/></th>
    <th width="70" nowrap="nowrap" scope="col"><input type="text"  size="6" maxlength="10" value=""/></th>
    <th width="69" nowrap="nowrap" scope="col">
          <select size="1">
			  <option value="">请选择...</option>
			  <option value="1">1</option>
			  <option value="2">1</option>
         </select>
        </th>
    <td width="100" nowrap="nowrap" scope="col"><input type="text"  class="date150"/></td>
    <th width="94" nowrap="nowrap"  scope="col"><input type="text"  size="16" maxlength="50" value=""/></th>
    <th width="71" nowrap="nowrap"  scope="col"><input type="text"  size="16" maxlength="50" value=""/></th>
  </tr>
  </table>

 

分享到:
评论

相关推荐

    常用的js动态增加(删除)table数据行的功能

    常见的做法是在按钮上添加点击事件监听器,触发添加或删除行的操作。例如: ```javascript document.getElementById('addButton').addEventListener('click', function() { addRow('myTable', ['数据1', '数据2...

    jquery uI TABLE

    jQuery UI Table是一款基于jQuery库的插件,用于创建功能丰富的表格。在Web开发中,表格是展示数据的常见方式,jQuery UI Table通过提供可定制的样式和交互功能,使得网页表格更加美观且用户友好。本篇文章将深入...

    JQuery的插件

    ### JQuery的插件jqGrid详解 ...- **`delGridRow`**:用于删除表格中的某一行数据。 - **`addRowData`**:用于向表格中添加新的数据行。 通过合理利用这些API,可以进一步增强jqGrid的功能性和灵活性。

    layui动态添加表格元素删除代码.zip

    4. **监听事件**:通过 `layui.table.on()` 方法监听表格事件,如点击操作栏上的“删除”按钮,触发删除操作。 ```javascript table.on('tool(test)', function(obj){ // tool是工具条事件名,test是你设定的表id ...

    jquery_table相关

    为了提高用户体验,许多插件还支持自定义的事件处理和扩展功能,如行点击事件、行选择、按钮操作等。开发者可以根据项目需求,通过编写JavaScript代码或使用插件提供的API来定制这些功能。 总的来说,jQuery_table...

    vuetableVuejs组件会自动从服务器请求JSON数据并将它们显示在html表可切换可扩展的分页组件

    Vuetable是一款基于Vue.js的组件,用于动态加载和展示来自服务器的数据,这些数据通常是JSON格式。它将数据渲染成可交互的HTML表格,具备分页、排序、筛选等多种功能,极大地简化了开发者处理数据展示的工作。以下是...

    DataTables(二) —— 行分组信息展开与折叠的功能实现

    当用户点击展开/折叠按钮时,可以通过监听`click`事件来切换行的状态。使用DataTables的API方法,如`row().child()`来操作子行的显示和隐藏。 9. **性能优化** 对于大量数据,考虑使用服务器端处理或者延迟加载,...

    JS手机端课程表及课程安排事项代码

    在本项目中,"JS手机端课程表及课程安排事项代码"是一个专为在校学生设计的应用,它利用JavaScript技术在手机端实现了一种便捷的课程表管理功能。这个应用程序允许用户根据自己的学习计划轻松定制和查看课程表,提高...

    js动态的添加元素例如表格1

    JavaScript动态添加元素及表格操作 在JavaScript中,动态添加元素是指通过编程方式在网页中添加新的HTML元素,例如添加表格、列表、按钮等。这种技术广泛应用于Web开发中,例如在 Ajax 应用程序中,为了提供实时的...

    jquery的DataTable

    &lt;table id="example" class="display"&gt; &lt;th&gt;Name &lt;th&gt;Position &lt;th&gt;Office &lt;th&gt;Age &lt;th&gt;Start date &lt;th&gt;Salary &lt;!-- 表格数据行 --&gt; &lt;/table&gt; $(document).ready(function() { $('#example')....

    html标签总结

    - **示例**:`第一行 第二行&lt;/p&gt;` #### 按钮:`&lt;button&gt;` - **作用**:定义一个按钮。 - **示例**:`提交&lt;/button&gt;` #### 表格标题:`&lt;caption&gt;` - **作用**:定义表格的标题。 - **示例**:`&lt;table&gt;员工名单...

    html css js网页设计

    alert('按钮被点击了!'); }); }); ``` **在HTML中引用JavaScript**: ```html 点击我 &lt;script src="script.js"&gt; ``` #### 四、网页设计流程 1. **规划与设计**:确定网页的目标、受众和内容结构。 2. **...

    Html知识点汇总.docx

    Html是超文本标记语言(HyperText Markup Language),是一种用于创建网页的标准标记语言。... 一、Html基本概念 Html是一种标记语言,用来描述网页的结构和内容。...开始标签用来定义元素的...* button标签:定义一个按钮

    js-tablator:动态创建和填充 html 表格的 *small* javascript 实用程序

    2. **创建表格**: 创建一个空的`&lt;table&gt;`元素,并设置一个唯一的`id`,作为js-tablator实例化的目标。 ```html &lt;table id="myTable"&gt;&lt;/table&gt; ``` 3. **初始化表格**: 在JavaScript中,通过`new Tabulator("#...

    DataTableRowUpAndDown

    例如,我们可以在每一行的末尾添加两个按钮,分别用于上移和下移: ```javascript $(document).ready(function() { var table = $('#example').DataTable({ columnDefs: [{ targets: -1, // 最后一列 render: ...

    html基本(超全的html基础知识)

    - `&lt;button&gt;`:创建按钮,可提交表单或执行JavaScript操作。 - `&lt;label&gt;`:为表单元素提供描述,提升可访问性。 **第四讲:表格table** HTML表格用于展示结构化数据,主要标签包括: - `&lt;table&gt;`:定义表格。 - `...

    HTML标签解释大全

    - **说明**:` ` 标签用于插入一个换行符,强制文本在新的一行显示。例如: ```html 第一行文本. 第二行文本. ``` ##### 标签:button - **说明**:`&lt;button&gt;` 标签用于指定其中所含的HTML要被渲染为一个...

    html+javascript+css学习笔记

    - `&lt;tr&gt;`:定义表格的一行。 - `&lt;th&gt;`:定义表头单元格,通常用于描述列的含义。 - `&lt;td&gt;`:定义普通单元格,用于放置具体的数据。 ##### 3. DIV 和 SPAN 标签 - **DIV**:定义一个区块容器,常用于布局设计,可以...

    TreeGrid树状结构

    TreeGrid是一种基于jQuery的插件,它用于将数据以树状结构展示,使得层次关系更加清晰,便于用户理解和操作。这种组件在数据管理和展示时特别有用,尤其适用于那些具有复杂层级关系的数据,如组织结构、文件系统或者...

Global site tag (gtag.js) - Google Analytics