如何使用JavaScript在文本框中插入HTML表的特定单元格值?
我有一个HTML表单。“保存”和“删除”按钮工作正常。但我想编写编辑和更新按钮的JavaScript(不是jQuery或AngularJS)代码。当我单击编辑按钮时,特定行的数据应显示在文本框中,当我按下更新按钮时,该特定行的更新数据应在HTML表中提交如何使用JavaScript在文本框中插入HTML表的特定单元格值?,javascript,html,css,Javascript,Html,Css,我有一个HTML表单。“保存”和“删除”按钮工作正常。但我想编写编辑和更新按钮的JavaScript(不是jQuery或AngularJS)代码。当我单击编辑按钮时,特定行的数据应显示在文本框中,当我按下更新按钮时,该特定行的更新数据应在HTML表中提交 function addRow() { var id= document.getElementById("id"); var name= document.getElementById("name"); var ge
function addRow() {
var id= document.getElementById("id");
var name= document.getElementById("name");
var gender= document.getElementById("gender");
var address= document.getElementById("address");
var email = document.getElementById("email");
var table = document.getElementById("myTableData");
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
row.insertCell(0).innerHTML= id.value;
row.insertCell(1).innerHTML= name.value;
row.insertCell(2).innerHTML= gender.value;
row.insertCell(3).innerHTML= address.value;
row.insertCell(4).innerHTML= email.value;
row.insertCell(5).innerHTML= '<input type="button" value = "Delete" onClick="Javacsript:deleteRow(this)">';
row.insertCell(6).innerHTML= '<input type="button" value = "Edit" onClick="Javacsript:updateRow(this)">';
id.value="";
name.value="";
gender.value="";
address.value="";
email.value="";
}
function updateRow(obj){
}
function reset(){
var id= document.getElementById("id");
var name= document.getElementById("name");
var gender= document.getElementById("gender");
var address= document.getElementById("address");
var email = document.getElementById("email");
var table = document.getElementById("myTableData");
id.value="";
name.value="";
gender.value="";
address.value="";
email.value="";
}
function deleteRow(obj) {
var index = obj.parentNode.parentNode.rowIndex;
var table = document.getElementById("myTableData");
table.deleteRow(index);
}
}
函数addRow(){
var id=document.getElementById(“id”);
var name=document.getElementById(“名称”);
var-gender=document.getElementById(“性别”);
var address=document.getElementById(“地址”);
var email=document.getElementById(“电子邮件”);
var table=document.getElementById(“myTableData”);
var rowCount=table.rows.length;
var row=table.insertRow(rowCount);
row.insertCell(0).innerHTML=id.value;
row.insertCell(1).innerHTML=name.value;
row.insertCell(2).innerHTML=gender.value;
row.insertCell(3).innerHTML=address.value;
row.insertCell(4).innerHTML=email.value;
insertCell(5).innerHTML='';
insertCell(6.innerHTML='';
id.value=“”;
name.value=“”;
性别。价值=”;
address.value=“”;
email.value=“”;
}
函数updateRow(obj){
}
函数重置(){
var id=document.getElementById(“id”);
var name=document.getElementById(“名称”);
var-gender=document.getElementById(“性别”);
var address=document.getElementById(“地址”);
var email=document.getElementById(“电子邮件”);
var table=document.getElementById(“myTableData”);
id.value=“”;
name.value=“”;
性别。价值=”;
address.value=“”;
email.value=“”;
}
函数deleteRow(obj){
var index=obj.parentNode.parentNode.rowIndex;
var table=document.getElementById(“myTableData”);
表.删除行(索引);
}
}
添加函数将如下所示。。
函数addRow(){
var table=document.getElementById(“myTableData”);
var rowCount=table.rows.length;
var row=table.insertRow(rowCount);
var id=document.getElementById(“id”);
var name=document.getElementById(“名称”);
var-gender=document.getElementById(“性别”);
var address=document.getElementById(“地址”);
var email=document.getElementById(“电子邮件”);
var cell1=行插入单元格(0);
cell1.innerHTML=id.value;
var cell2=行插入单元格(1);
cell2.innerHTML=name.value;
var cell3=行插入单元格(2);
cell3.innerHTML=gender.value;
var cell4=行插入单元格(3);
cell4.innerHTML=address.value;
var cell5=行插入单元格(4);
cell5.innerHTML=email.value;
var cell6=行插入单元格(5);
var strHtml5=“|”;
cell6.innerHTML=strHtml5;
}
我复制了您的代码并在我的机器上执行,发现了您由于未使用表单标签而犯的小错误和大错误,并创建了表单
在逆向工程之后,我附加了您的代码,使其功能全面,易于理解
<!DOCTYPE html>
<html>
<head>
<title>HTML dynamic table using JavaScript</title>
<!-- ### <script type="text/javascript" src="D:\LatestNewProject-JavaScript\script.js"></script> -->
</head>
<body>
<div id="myform">
<b>Employee Information</b>
<form method="post" action=""> <!-- ###Form tag is not used -->
<table>
<tr>
<td>ID:</td> <!-- ###change id to empId as id="id" will cause ambiguity -->
<td><input type="text" id="empId"></td> <!-- ###use text field instead of number to make input of 3 digit no. easy -->
</tr>
<tr>
<td>Name:</td>
<td><input type="text" id="name"></td>
</tr>
<tr>
<td>Gender:</td> <!-- ### imstead of select option you must use radio button -->
<td> <input type="radio" id="gender" value="male" /> Male <br>
<input type="radio" id="gender" value="Female" /> FeMale
</td>
</tr>
<tr>
<td>Address:</td>
<td><input type="textarea" id="address"></td> <!-- ###insted of text field you should give textarea field-->
</tr>
<tr>
<td>Email:</td> <!-- ###email is new element in HTML5 so, id="email" can cause issue, so email=Email -->
<td><input type="email" id="mail" name="Email"></td>
</tr>
<!-- No need to use this [<table>] --> <!-- ### onclick should be onClick [best practice]-->
<tr>
<td><input type="button" id="add" value="Add" onclick="javascript:addRow()"></td>
<td><input type="reset" value="Reset" /> </td>
<td><input type="button" id="update" value="Update" onClick=""></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
</div>
<div id="mydata">
<table id="myTableData" border="1" cellpadding="2">
<tr>
<td><b>ID</b></td>
<td><b>Name</b></td>
<td><b>Gender</b></td>
<td><b>Address</b></td>
<td><b>Email</b></td>
<td><b>Action</b></td>
</tr>
</table>
</div>
<!-- ============ JavaScript ========== -->
<script>
function addRow() {
var id= document.getElementById("empId");
var name= document.getElementById("name");
var gender= document.getElementById("gender");
var address= document.getElementById("address");
var email = document.getElementById("mail");
var table = document.getElementById("myTableData");
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
row.insertCell(0).innerHTML= empId.value;
row.insertCell(1).innerHTML= name.value;
row.insertCell(2).innerHTML= gender.value;
row.insertCell(3).innerHTML= address.value;
row.insertCell(4).innerHTML= mail.value;
row.insertCell(5).innerHTML= '<input type="button" value = "Delete" onClick="Javacsript:deleteRow(this)">';
row.insertCell(6).innerHTML= '<input type="button" value = "Edit" onClick="Javacsript:updateRow(this)">';
empId.value="";
name.value="";
gender.value="";
address.value="";
mail.value="";
}
function updateRow(obj){
}
function reset(){
var id= document.getElementById("empId");
var name= document.getElementById("name");
var gender= document.getElementById("gender");
var address= document.getElementById("address");
var email = document.getElementById("mail");
var table = document.getElementById("myTableData");
empId.value="";
name.value="";
gender.value="";
address.value="";
mail.value="";
}
function deleteRow(obj) {
var index = obj.parentNode.parentNode.rowIndex;
var table = document.getElementById("myTableData");
table.deleteRow(index);
}
</script>
</body>
</html>
使用JavaScript的HTML动态表
员工信息
身份证件:
姓名:
性别:
男性
女性
地址:
电邮:
身份证件
名称
性别
地址
电子邮件
行动
函数addRow(){
var id=document.getElementById(“empId”);
var name=document.getElementById(“名称”);
var-gender=document.getElementById(“性别”);
var address=document.getElementById(“地址”);
var email=document.getElementById(“邮件”);
var table=document.getElementById(“myTableData”);
var rowCount=table.rows.length;
var row=table.insertRow(rowCount);
row.insertCell(0).innerHTML=empId.value;
row.insertCell(1).innerHTML=name.value;
row.insertCell(2).innerHTML=gender.value;
row.insertCell(3).innerHTML=address.value;
row.insertCell(4).innerHTML=mail.value;
insertCell(5).innerHTML='';
insertCell(6.innerHTML='';
empId.value=“”;
name.value=“”;
性别。价值=”;
address.value=“”;
mail.value=“”;
}
函数updateRow(obj){
}
函数重置(){
var id=document.getElementById(“empId”);
var name=document.getElementById(“名称”);
var-gender=document.getElementById(“性别”);
var address=document.getElementById(“地址”);
var email=document.getElementById(“邮件”);
var table=document.getElementById(“myTableData”);
empId.value=“”;
name.value=“”;
性别。价值=”;
address.value=“”;
mail.value=“”;
}
函数deleteRow(obj){
var index=obj.parentNode.parentNode.rowIndex;
var table=document.getElementById(“myTableData”);
表.删除行(索引);
}
您能提供HTML或Fiddle吗?如何运行/调试代码?在我看来,您已经知道如何做您想要的事情:您知道如何将函数附加到HTML,您知道如何使用innerHTML
获取和设置HTML元素。你到底不明白什么?我想要两个功能的编辑和更新按钮,我不能实现。如果有任何帮助,我们将不胜感激。嘿,人造丝,这是我的HTML代码@DeepakYadav的链接。你有没有检查过小提琴是否有效D:\LatestNewProject JavaScript\script.js
在您的计算机中-\uuuuu-请参阅和
<!DOCTYPE html>
<html>
<head>
<title>HTML dynamic table using JavaScript</title>
<!-- ### <script type="text/javascript" src="D:\LatestNewProject-JavaScript\script.js"></script> -->
</head>
<body>
<div id="myform">
<b>Employee Information</b>
<form method="post" action=""> <!-- ###Form tag is not used -->
<table>
<tr>
<td>ID:</td> <!-- ###change id to empId as id="id" will cause ambiguity -->
<td><input type="text" id="empId"></td> <!-- ###use text field instead of number to make input of 3 digit no. easy -->
</tr>
<tr>
<td>Name:</td>
<td><input type="text" id="name"></td>
</tr>
<tr>
<td>Gender:</td> <!-- ### imstead of select option you must use radio button -->
<td> <input type="radio" id="gender" value="male" /> Male <br>
<input type="radio" id="gender" value="Female" /> FeMale
</td>
</tr>
<tr>
<td>Address:</td>
<td><input type="textarea" id="address"></td> <!-- ###insted of text field you should give textarea field-->
</tr>
<tr>
<td>Email:</td> <!-- ###email is new element in HTML5 so, id="email" can cause issue, so email=Email -->
<td><input type="email" id="mail" name="Email"></td>
</tr>
<!-- No need to use this [<table>] --> <!-- ### onclick should be onClick [best practice]-->
<tr>
<td><input type="button" id="add" value="Add" onclick="javascript:addRow()"></td>
<td><input type="reset" value="Reset" /> </td>
<td><input type="button" id="update" value="Update" onClick=""></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
</div>
<div id="mydata">
<table id="myTableData" border="1" cellpadding="2">
<tr>
<td><b>ID</b></td>
<td><b>Name</b></td>
<td><b>Gender</b></td>
<td><b>Address</b></td>
<td><b>Email</b></td>
<td><b>Action</b></td>
</tr>
</table>
</div>
<!-- ============ JavaScript ========== -->
<script>
function addRow() {
var id= document.getElementById("empId");
var name= document.getElementById("name");
var gender= document.getElementById("gender");
var address= document.getElementById("address");
var email = document.getElementById("mail");
var table = document.getElementById("myTableData");
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
row.insertCell(0).innerHTML= empId.value;
row.insertCell(1).innerHTML= name.value;
row.insertCell(2).innerHTML= gender.value;
row.insertCell(3).innerHTML= address.value;
row.insertCell(4).innerHTML= mail.value;
row.insertCell(5).innerHTML= '<input type="button" value = "Delete" onClick="Javacsript:deleteRow(this)">';
row.insertCell(6).innerHTML= '<input type="button" value = "Edit" onClick="Javacsript:updateRow(this)">';
empId.value="";
name.value="";
gender.value="";
address.value="";
mail.value="";
}
function updateRow(obj){
}
function reset(){
var id= document.getElementById("empId");
var name= document.getElementById("name");
var gender= document.getElementById("gender");
var address= document.getElementById("address");
var email = document.getElementById("mail");
var table = document.getElementById("myTableData");
empId.value="";
name.value="";
gender.value="";
address.value="";
mail.value="";
}
function deleteRow(obj) {
var index = obj.parentNode.parentNode.rowIndex;
var table = document.getElementById("myTableData");
table.deleteRow(index);
}
</script>
</body>
</html>