如何从 html 表数据填充 javascript 模型

How to populate javascript model from html table data

本文关键字:填充 javascript 模型 数据 html      更新时间:2023-09-26

>我的页面上有以下类型的动态UI通过表格

<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>

我想使用上表动态填充以下类型的模型以将数据发布到服务器。

var student = {};
  student.Id = Id;//where Id may be equal to 135
  studnet.IsPresent = true;// if that particualar radio button is checked  else false

我想创建此类学生的数组,这些数组应等于上表中的行数。

你能告诉你如何实现这一目标吗?

这个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>