js添加一行、删除一行

                                                    let str="<tr>"
+"<td>"+a[1]+"</td>"
+"<td>"+p_money+"</td>"
+"<td>"+b_money+"</td>"
+"<td ><span onclick=\"delTab('"+a[0]+"',this)\" style=\"color: blue;cursor:pointer;\">删除</span></td>"
+"</tr>";
$("#tab").append(str);
   function delTab(id,obj){
ids=ids.replace(id+"#", "");
var tr=obj.parentNode.parentNode;
var tbody=tr.parentNode;
tbody.removeChild(tr);
}

js获取多少行 多少列   以及获取数据

                  //获取表格对象;
let tab = document.getElementById("tab");
//获取表格所有行数;
let tablRows = tab.rows.length;
let args="";
for(let i=1;i<tablRows;i++){
for(let j=1;j<tab.rows[i].cells.length-1;j++){
args+=tab.rows[i].cells[j].innerText+"#";
}
args+=",";
}

根据单元格获取行号

        console.log(obj.parentNode.parentNode.rowIndex);

添加  、删除、上移、下移 案例代码

        function add(){
let pjc=$("#pjc").val();
$("#pjc").val("");
//获取表格对象;
let tab = document.getElementById("mytab");
//获取表格所有行数;
let tablRows = tab.rows.length;
if(tablRows>=){
alert("最多只能添加10条");
return;
}
if(pjc){
if(tablRows==){
let str="<tr>"
+"<td>"+pjc+"</td>"
+"<td ><span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span></td>"
+"</tr>";
$("#mytab").append(str);
}else if (tablRows==) {
tab.rows[].cells[].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toBut(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">下移</span>";
let str="<tr>"
+"<td>"+pjc+"</td>"
+"<td ><span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toTop(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">上移</span>"
+"</td>"
+"</tr>";
$("#mytab").append(str);
}else { let a= tab.rows[tablRows-].cells.length-;
tab.rows[tablRows-].cells[a].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toTop(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">上移</span>"
+"<span onclick=\"toBut(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">下移</span>"; let str="<tr>"
+"<td>"+pjc+"</td>"
+"<td ><span onclick=\"delTab(this)\" Opstyle=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toTop(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">上移</span>"
+"</td>"
+"</tr>";
$("#mytab").append(str);
}
} } function toTop(obj) {
//获取表格对象;
let tab = document.getElementById("mytab");
let rows= obj.parentNode.parentNode.rowIndex;
let rows2=rows-;
let html1=tab.rows[rows].cells[].innerHTML;
let html2=tab.rows[rows2].cells[].innerHTML;
tab.rows[rows].cells[].innerHTML=html2;
tab.rows[rows2].cells[].innerHTML=html1;
} function toBut(obj) {
//获取表格对象;
let tab = document.getElementById("mytab");
let rows= obj.parentNode.parentNode.rowIndex;
let rows2=rows+;
let html1=tab.rows[rows].cells[].innerHTML;
let html2=tab.rows[rows2].cells[].innerHTML;
tab.rows[rows].cells[].innerHTML=html2;
tab.rows[rows2].cells[].innerHTML=html1;
} function delTab(obj){
//获取表格对象;
let tab = document.getElementById("mytab");
//获取表格所有行数;
let tablRows = tab.rows.length;
var tr=obj.parentNode.parentNode;
let rows= obj.parentNode.parentNode.rowIndex;
var tbody=tr.parentNode;
tbody.removeChild(tr);
if(tablRows==){
tab.rows[].cells[].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>";
}else if(tablRows==){
if(rows+==){
tab.rows[].cells[].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toTop(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">上移</span>";
}else if(rows==){
tab.rows[].cells[].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toBut(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">下移</span>";
} }else if(tablRows>=4){
if(rows+==tabRows){
tab.rows[rows-1].cells[].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toTop(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">上移</span>";
}else if(rows==){
tab.rows[].cells[].innerHTML="<span onclick=\"delTab(this)\" style=\"color: blue;cursor:pointer;\">删除</span>"
+"<span onclick=\"toBut(this)\" style=\"color: blue;cursor:pointer;margin-left: 10px;\">下移</span>";
}
} }

js操作表格、table、的更多相关文章

  1. js操作表格

    js 操作table: insertRow(),deleteRow(),insertCell(),deleteCell()方法 表格有几行: var trCnt = table.rows.length ...

  2. js 操作表格行数的删减

    沉溺了好几个月了,自从年假回来就一直在忙换工作的事情: 新环境.新同事,一如既往的工作, 那么闲话不多说,前两天师妹问我要一个类似于添加和删除的demo:闲暇时间我就参照一些代码写了一下, (发现有错 ...

  3. 用js操作表格

    效果图: 任务: 1. 鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff var tr=document.getElementsByTagName(" ...

  4. JS 将表格table导出excel

    function tableToExcel(id) { var tb = document.getElementById(id); var html = '<html><head&g ...

  5. DOM系列---DOM操作表格

    DOM在操作生成HTML上,还是比较简明的.不过,由于浏览器总是存在兼容和陷阱,导致最终的操作就不是那么简单方便了.本篇章主要了解一下DOM操作表格. 一.操作表格 <table>标签是H ...

  6. 第一百一十五节,JavaScript,DOM操作表格

    JavaScript,DOM操作表格 学习要点: 1.操作表格 DOM在操作生成HTML上,还是比较简明的.不过,由于浏览器总是存在兼容和陷阱,导致最终的操作就不是那么简单方便了.本章主要了解一下DO ...

  7. JavaScript(第二十天)【DOM操作表格及样式】

    DOM在操作生成HTML上,还是比较简明的.不过,由于浏览器总是存在兼容和陷阱,导致最终的操作就不是那么简单方便了.本章主要了解一下DOM操作表格和样式的一些知识. 一.操作表格 <table& ...

  8. JavaScript--DOM操作表格及样式(21)

    一 操作表格 // <table>标签是HTML中结构最为复杂的一个,我们可以通过DOM来创建生成它,或者HTMLDOM来操作它; // 使用DOM来创建表格; var table = d ...

  9. DOM 操作表格

    操作表格<table>标签是 HTML 中结构最为复杂的一个,我们可以通过 DOM 来创建生成它,或者 HTML DOM 来操作它.(PS:HTML DOM 提供了更加方便快捷的方式来操作 ...

随机推荐

  1. Spring AOP 复习

    Aspect Oriented Programming 通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术,利用aop可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降 ...

  2. 共享变量与python测试库

    共享变量(Variables) 1.变量表: 导入模式: 1.套件文件,不需要导入 2.资源文件 Resource  xxx.robot 2.变量文件 导入模式: 1.Variables xx.py ...

  3. SCP免密传输和SSH登录流程详解

    SCP免密传输和SSH登录协议详解 在linux下开发时,经常需要登录到其他的设备上,例如虚拟机内ubuntu.树莓派等等,经常涉及到传输文件的操作,传输文件有很多中方法,如物理磁盘拷贝,基于网络的s ...

  4. Docker版zabbix

    1. docker-compose docker-compose :容器自带的编排工作,可以通过yaml编排文件,将容器要启动的命令写入文件,然后再利用docker-compose run file. ...

  5. SaltStack--快速入门

    saltstack快速入门 saltstack介绍 Salt,一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯 主要功能远程执 ...

  6. PAT 乙级 1013.数素数 C++/Java

    题目来源 令 P​i​​ 表示第 i 个素数.现任给两个正整数 M≤N≤10​4​​,请输出 P​M​​ 到 P​N​​ 的所有素数. 输入格式: 输入在一行中给出 M 和 N,其间以空格分隔. 输出 ...

  7. input事件在进行模糊搜索时,用到的即时监测input的值变化的方法(即时搜索的input和propertychange方法)

    做搜索功能的时候,经常遇到输入框检查的需求,最常见的是即时搜索,今天好好小结一下. 即时搜索的方案: (1)change事件    触发事件必须满足两个条件: a)当前对象属性改变,并且是由键盘或鼠标 ...

  8. C# 只允许运行一个程序实例

    using System; using System.Windows.Forms; using System.Runtime.InteropServices;//使用DllImport的必须. usi ...

  9. DT系统应用-添加地图标注

    修改方法:修改模板->Homepage->contact.htm 在 {php $map_height = 300;} {php @include DT_ROOT.'/api/map/'. ...

  10. 第一章 Java起源

    1.计算机语言发展史:B语言-->C语言-->C++语言-->Java语言.通过C和C++反过来理解Java的设计,理解更深: 复杂性:结构化变成=>面向对象编程:继承.封装. ...