首页 > 编程语言 >原生javascript点击获取table表格数据

原生javascript点击获取table表格数据

时间:2022-11-04 23:44:08浏览次数:30  
标签:表格 javascript tr parentNode userList let var table

1.ajax获取List数据

xmlHttp.onreadystatechange = function () {
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                let returnVal = xmlHttp.responseText;
                let userList = eval("(" + returnVal + ")");
            }
        }

2.遍历List,添加进table

table.insertRow(-1)增加表格的行
tr.insertCell(0)插入行内单元格

let table = document.getElementById("tbBody");
     var len = table.childNodes.length;
     for (let i = len - 1; i >= 0; i--) {
         table.removeChild(table.childNodes[i]);
     }
     for (let i = 0; i < userList.length; i++) {
         var tr = table.insertRow(-1);
         var td1 = tr.insertCell(0);
         var td2 = tr.insertCell(1);
         var td3 = tr.insertCell(2);
         var td4 = tr.insertCell(3);
         td1.innerHTML = userList[i].id;
         td2.innerHTML = userList[i].username;
         td3.innerHTML = userList[i].password;
         td4.innerHTML = "<button class='delUser' onclick='delUser(this)'>
		 删除</button >&emsp;
		 <button class='updateUser' onclick='upPage(this)'>
		 修改</button>";
                }

3.点击按钮获取当前tr对象

重点来了,删除修改按钮的onclick函数形参一定要写this形参,此时
this => <button>...</button>
然后在onclick函数中通过获取两次parentNode,最后可以得到当前按钮对应的tr.

function delUser(obj) {
	let id = obj.parentNode.parentNode.childNodes[0].innerText;
	let username = obj.parentNode.parentNode.childNodes[1].innerText;
	let password = obj.parentNode.parentNode.childNodes[2].innerText;
    }

注意: js中的function形参不要写this,可以写obj代替,否则容易冲突

4.获取对象后操作

获取按钮对应tr的所有数据后,就可以传入数据库对其进行操作啦

标签:表格,javascript,tr,parentNode,userList,let,var,table
From: https://www.cnblogs.com/lichuanjiang/p/16859451.html

相关文章

  • AI 作画《NBA球星动漫头像》| 用stable diffusion生成
    扩散模型原理扩散模型是一种概率模型,通过逐步去噪一个正态分布变量来学习数据分布p(x),对应于学习长度为t的固定马尔可夫链的反向过程。模型可以通过训练去噪自编码器来实现(T......
  • 1 JavaScript作用、功能和发展史
    文章目录​​前言​​​​1JavaScript基本介绍​​​​2JavaScript当前作用​​​​3JavaScript结构组成​​​​4JavaScript语言特点​​​​结语​​前言......
  • JavaScript(一)
    五大主流浏览器及其内核浏览器内核chromewebkitblinksafariwebkitfirefoxgeckooperaprestoIEtrident浏览器的历史JavaScript的目的就是......
  • javascript_snake
    html<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content=......
  • JavaScript中的Pipe
    JavaScript中的Pipe本文会介绍Pipe在函数式编程中的基本概念,怎么用Pipe让我们的代码变得更美好,以及新的pipe操作符,Fancy的东西在后面!什么是Pipe?先用一个最简单的例子来看......
  • javascript - 练习题:自定义typeof / 数组去重
    自定义typeof函数为啥要自定义typeof,因为 引用值 会被typeof 输出为object。 换句话说:typeof 不能区分 引用值(数组、对象和包装类)的具体类型;typeof 本身是可......
  • 全局常量的统一,及在eleemnt-ui表格中的格式化
    在实际项目中遇到很多枚举的常量值,需要统一管理,在表格中需要把对应的值格式化成名称,以此记录:1.在utils文件夹新建globalData.ts文件,用于存放全局的常量:constgobalData......
  • Linux中iptables自定义链
    [root@cloudos02~]#iptables-nvL--line-numberChainINPUT(policyACCEPT0packets,0bytes)numpktsbytestargetprotoptinoutsource......
  • IPTABLES 详解
    引言先来看一条常用的iptables命令:Iptables(-tfilter)-IINPUT-ptcp--dportssh/22-jACCEPT这一条命令,生成了一条规则。允许所有22端口的TCP连接。这条规则作用......
  • 原生javascript清空table表格
    本文主要分享一下原生javascript清空table表格的方法,仅供参考:lettable=document.getElementById("tableId");varlen=table.childNodes.length;for(leti=len-......