我需要更新表格中的某一行,已经执行了“验证器”以确保在单击其他按钮后选中复选框时进行1行编辑,到目前为止我写了类似的内容:
$("#btnsavechanges").click(function(){
$("#meetingspanel tr td").find(":checked").parent().parent().children)(.eq(0).append(document.getElementById("modsub").value);
$("#meetingspanel tr td").find(":checked").parent().parent().children)(.eq(2).append(document.getElementById("modwhere").value);
$("#meetingspanel tr td").find(":checked").parent().parent().children)(.eq(3).append(document.getElementById("modwhen").value);
$("#meetingspanel tr td").find(":checked").parent().parent().children)(.eq(4).append(document.getElementById("modtime").value);
$("#meetingspanel tr td").find(":checked").parent().parent().children)(.eq(5).append(document.getElementById("modwho").value);
$("#tblmod").fadeOut("slow");
});
表格如下:
<table id='tblmod' width='80%' align='center' >
<tr bgcolor='white'>
<td width='15%'>
Enter Subject<input type="text" id="modsubject" width="15%">
</td>
<td width='15%'>
Enter Location<input type="text" id="modwhere" width="15%">
</td>
<td width='15%'>
Enter When<input type="text" id="modwhen" width="15%">
</td>
<td width='15%'>
Enter Time<input type="text" id="modtime" width="15%">
</td>
<td width='15%'>
Enter With Who<input type="text" id="modwho" width="15%">
</td>
</tr>
<tr><th align="right" style=border-width:0px><button type="button" id="btnsavechanges" value="Save New Changes" >Save Changes</button></th></tr>
</table>
答案 0 :(得分:1)
我建议使用数据绑定框架。我最近一直在使用knockoutjs,我喜欢它。使用Knockout时,我编写的用于执行复杂UI的代码量要小得多。
基本上,您只需向元素添加data-bind
属性即可绑定HTML。然后,当有人更改某个值时,会立即在您的viewmodel中更新它。如果您从AJAX请求中提取新数据,它也会更新您的UI。
此处有更多信息:http://knockoutjs.com/
我强烈建议这样做,因为它可以帮助您编写更清晰,更易于管理的代码,并且速度更快。通过按照要求“手动”处理所有内容,您将“重新发明轮子”。