如何从html表数据填充javascript模型
我在我的页面上的表格中有以下类型的动态UI如何从html表数据填充javascript模型,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我在我的页面上的表格中有以下类型的动态UI <table id="tblUserAttendance"> <tr id="135"> <td> 1 </td> <td> Student 1 </td> <td> <input checked="checked" name="rdo135" type="radio" value="true" /&
<table id="tblUserAttendance">
<tr id="135"> <td> 1 </td>
<td> Student 1 </td>
<td> <input checked="checked" name="rdo135" type="radio" value="true" /> Pre
<input name="rdo135" type="radio" value="false" /> Absent
</td>
</tr>
<tr id="136"> <td> 1 </td>
<td> Student 1 </td>
<td> <input checked="checked" name="rdo136" type="radio" value="true" /> Pre
<input name="rdo136" type="radio" value="false" /> Absent
</td>
</tr>
<tr id="137"> <td> 1 </td>
<td> Student 1 </td>
<td> <input checked="checked" name="rdo137" type="radio" value="true" /> Pre
<input name="rdo137" type="radio" value="false" /> Absent
</td>
</tr>
</table>
我想创建这样的学生数组,它应该等于上表中的行数
您能告诉我如何实现这一点吗。此jQuery将为您创建一个学生对象数组:
<script type="text/ecmascript">
var result = [];
var students = $.each($('#tblUserAttendance tr'), function (i, e) {
var studentData = $('td', e);
var checks = $('input', studentData[2]);
var student = { id: e.id, name: studentData[1].textContent, active: checks[0].checked };
result[i] = student;
});
</script>
var结果=[];
var students=$。每个($('#tbluserantdance tr'),函数(即,e){
var studentData=$('td',e);
var检查=$('input',studentData[2]);
var student={id:e.id,名称:studentData[1]。textContent,活动:checks[0]。checked};
结果[i]=学生;
});
您走错了方向。视图以另一种方式呈现来自控制器的数据。great@m1kael,所以现在使用上面的查询,我们可以得到每个学生的id和姓名,但是如何获得单选按钮组的值,你能在同一个答案中建议一个jquery选择器来实现这一点吗?我想这行var student={id:e.id,name:studentData[1].textContent};应该是var student={id:e.id,IsPresent:studentData[1].is(':checked');我说的对吗?更新了我的答案。is(“:checked”)也可以,但只有在对输入调用时才可以,而不是td(studentData[1]是td)。我的方法是相同的,所以我不需要添加单独的答案。感谢Richard+1为您提供的方法
<script type="text/ecmascript">
var result = [];
var students = $.each($('#tblUserAttendance tr'), function (i, e) {
var studentData = $('td', e);
var checks = $('input', studentData[2]);
var student = { id: e.id, name: studentData[1].textContent, active: checks[0].checked };
result[i] = student;
});
</script>