仅将第一个给定值插入表中。变量i用于递增表中tr的索引值,它在递增但值没有插入。其他的就不添加了。不明白为什么。我是 jquery 新手。
<!DOCTYPE html>
<html>
<head>
<title>My first Page</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
var i=0;
$(document).ready(function(){
$("#hello").click(function(){
var a=$("<td></td>").text($("#test1").val());
var b=$("<td></td>").text($("#test2").val());
var c=$("<td></td>").text($("#test3").val());
var d=$("<td></td>").text($("#test4").val());
var e=$("<td></td>").text($("#test5").val());
$($("table tr").eq(i)).after(e).after(d).after(c).after(b).after(a);
i=i+1;
});
});
</script>
</head>
<body>
<div>
<h1>Hello Talib</h1>
<div>IT</div>
<div>WILL</div>
<div>DISAPPEAR</div>
</div>
First Name: <input type="text" value="fname" id ="test1"><br>
Last Name: <input type="text" value="lname" id="test2"><br>
Roll Number: <input type="text" value="rnum" id="test3"><br>
Faculty:
<select name="Faculty" id="test4">
<option value="CE">Computer Engineering</option>
<option value="BE">Biomedical Engineering</option>
<option value="CV">Civil Engineering</option>
<option value="TE">Telecommunication Engineering</option>
</select>
<br>
Semester:
<input type="radio" value="1st" name="sem" id="test5">1st
<input type="radio" value="2nd" name="sem" id="test5">2nd
<input type="radio" value="3rd" name="sem" id="test5">3rd
<input type="radio" value="4th" name="sem" id="test5">4th
<input type="radio" value="5th" name="sem" id="test5">5th
<input type="radio" value="6th" name="sem" id="test5">6th
<input type="radio" value="7th" name="sem" id="test5">7th
<input type="radio" value="8th" name="sem" id="test5">8th
<br>
<input type="submit" value="Submit"id="hello">
<table border="1" style="border: solid 1px black">
<tr>
<td>First Name</td>
<td>Last Name</td>
<td>Roll Number</td>
<td>Faculty</td>
<td>Semester</td>
</tr>
</table>
</body>
</html>
最佳答案
如果您没有理由使用按字母顺序排列的变量,则可以使用 for 循环:
$(document).ready(function(){
$("#hello").click(function(){
$row = $('<tr/>');
for(i=1; i<=5; i++){
cellVal = i < 5 ? $("#test"+i).val() : $("input[name=sem]:checked").val();
$row.append($("<td/>").text(cellVal));
}
$('table').append($row);
});
});
但是请重新考虑您的复选框,您的 DOM 中的任何位置都不能有重复的 id。我添加了一个解决方法,但绝对要删除这些重复项。
关于javascript - 使用 jquery 中的表单将值插入到表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19593364/