首页 > 开发 > JavaScript > 正文

JS对HTML表格进行增删改操作

2020-03-24 16:02:23
字体:
来源:转载
供稿:网友
写一个html页面,里面有一个表格,储存用户信息,包括:用户名,密码,姓名,邮箱,电话,qq,身份证号。
现在要通过js对表格进行动态的增删改查(只是内存操作即可):
首先,加载页面时用js加载3条初始化记录;
有一个增加记录的按钮,点击后弹出一个div层提供输入,要求各字段必须符合输入格式且不能为空:
用户名:英文+数字+下划线
密码:英文+数字+下划线+6位以上;
姓名:中文;
邮箱,电话,qq,身份证号符合格式;
每条记录有修改、删除;
修改类似增加,要把原来值读出来;
HTML页面代码:
html head meta http-equiv="Content-Type" content="text/html; charset=utf-8"/ title js增删改 v1.0 /title script src="js/test.js" type="text/javascript" charset="utf-8" /script /head body center br/ br/ h2 js增删改 v1.0 /h2 br/ br/ a href="javascript:showAddInput();" 添加数据 /a br/ br/ div table border="1" id="table" th 用户名 /th th 密码 /th th 姓名 /th th 邮箱 /th th 电话 /th th qq /th th 身份证号 /th th 操作 /th /tr td A1 /td td 123 /td td a /td td a@qq.com /td td 123456789 /td td 40040044 /td td 270205197405213513 /td td a 修改 a   a 删除 /a /td /tr td A2 /td td 456 /td td b /td td b@qq.com /td td 987654321 /td td 30030033 /td td 470205197405213513 /td td a 修改 a   a 删除 /a /td /tr td A3 /td td 789 /td td c /td td c@qq.com /td td 800800820 /td td 30030030 /td td 570205197405213513 /td td a 修改 a   a 删除 /a /td /tr /table /div div id="addinfo" form 用户名:(用户名只能用英文+数字或下划线) br input type="text" id="username" / br !--限制用户名只能用英文 下划线 或数字-- 密码:(英文+数字或下划线,长度不小于6) br input type="text" id="password"/ br 姓名:(只能是汉字) br input type="text" id="name"/ br 邮箱: br input type="text" id="email"/ br 电话: br input type="text" id="phone"/ br qq: br input type="text" id="qq"/ br 身份证: br input type="text" id="uid"/ br br input type="button" value="提交" id="btn_add" input type="button" value="提交" id="btn_update" input type="button" value="取消" /form /div /center /body /html js代码:var row = 0 ; //定义全局行数用于修改var reg_email = /^/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9]+)*/.[A-Za-z0-9]+$/; //用于判断邮箱格式var reg_name = /^((/w*/d/w*[a-z]/w*)|(/w*[a-z]/w*/d/w*))$/i; //用于判断用户名格式var reg_chinese = /^[/u0391-/uFFE5]+$/ ; //用于判断姓名格式var reg_pass = /^((/w*/d/w*[a-z]/w*)|(/w*[a-z]/w*/d/w*))$/i;//用于判断密码格式//----获取行号-----function getRow(r){ var i=r.parentNode.parentNode.rowIndex; return i ;//----获取行号-----//----删除某一行-----function delRow(r){ document.getElementById('table').deleteRow(getRow(r));//----删除某一行-----//----清除添加信息框的内容-----function cleanAddInput(){ document.getElementById('username').value=''; document.getElementById('password').value=''; document.getElementById('name').value=''; document.getElementById('email').value=''; document.getElementById('phone').value=''; document.getElementById('qq').value=''; document.getElementById('uid').value='';//----清除添加信息框的内容-----//----显示添加信息框-----function showAddInput(){ document.getElementById('addinfo'). ; document.getElementById('btn_add'). ; document.getElementById('btn_update'). ; cleanAddInput(); //----显示添加信息框-----//----隐藏添加信息框-----function hideAddInput(){ document.getElementById('addinfo'). ;//----隐藏添加信息框-----//----判断输入框的信息是否符合要求-----function judge(){ //根据id获取表单信息 var username = document.getElementById('username').value; var password = document.getElementById('password').value; var name = document.getElementById('name').value; var email = document.getElementById('email').value; var phone = document.getElementById('phone').value; var qq = document.getElementById('qq').value; var uid = document.getElementById('uid').value; var judge = true ; //用于判断表单信息是否符合 if(username==''){ judge = false ; alert('请输入用户名'); }else if(password==''){ judge = false ; alert('请输入密码'); }else if(name==''){ judge = false ; alert('请输入姓名'); }else if(email==''){ judge = false ; alert('请输入邮箱'); }else if(phone==''){ judge = false ; alert('请输入电话'); }else if(qq==''){ judge = false ; alert('请输入qq'); }else if(uid==''){ judge = false ; alert('请输入身份证'); }else if(uid.length!=18){ judge = false ; alert('身份证应为18位,请正确填写'); }else if(qq.length =5 &&qq.length =13){ judge = false ; alert('请正确输入qq号码'); }else if(phone.length 3&&qq.length 12){ judge = false ; alert('请正确输入电话'); }else if(!reg_email.test(email)){ judge = false ; alert('邮箱格式不正确'); }else if(!reg_name.test(username)){ judge = false ; alert('用户名格式不正确'); }else if(!reg_chinese.test(name)){ judge = false ; alert('姓名格式不正确'); }else if((!reg_pass.test(password))||password.length 6){ judge = false ; alert('密码格式不正确'); return judge ;//----判断输入框的信息是否符合要求-----//----新增信息的插入方法-----function insertInfo(){ //根据id获取表单信息 var arr = new Array(); arr[0] = document.getElementById('username').value; arr[1] = document.getElementById('password').value; arr[2] = document.getElementById('name').value; arr[3] = document.getElementById('email').value; arr[4] = document.getElementById('phone').value; arr[5] = document.getElementById('qq').value; arr[6] = document.getElementById('uid').value; arr[7] =" a 修改 /a   a 删除 /a var x = document.getElementById('table').insertRow(1); //获取第一行对象 for(var i=0;i arr.length;i++){ x.insertCell(i).innerHTML = arr[i] ; //用循环把每个数据插入第一行的每一列//----新增信息的插入方法-----//----新增信息-----function addInfo(){ if(judge()==true){ alert('添加成功'); insertInfo(); //执行插入 hideAddInput(); //隐藏添加信息框 }else{ alert('添加失败');//----新增信息-----
for(var m=0 ; m m++){ arr[m] = document.getElementById('table').rows[row].cells[m].innerText; return arr ; //返回该行数据//----根据行号查信息----//----把查询到的信息放入修改的表单里----function insertInputFromQuery(arr){ document.getElementById('username').value = arr[0]; document.getElementById('password').value = arr[1]; document.getElementById('name').value = arr[2]; document.getElementById('email').value = arr[3]; document.getElementById('phone').value = arr[4]; document.getElementById('qq').value = arr[5]; document.getElementById('uid').value = arr[6];//----把查询到的信息放入修改的表单里----
document.getElementById('table').deleteRow(row);//删除原来那行 insertInfo(); //插入修改后的值 hideAddInput(); //隐藏添加模块 }else{ alert('修改失败'); hideAddInput();以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持phpstudy。更多编程语言

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表