JQuery DataTable中的Checkbox问题

时间:2011-10-27 06:19:12

标签: jquery datatables

我使用以下函数

为我的数据表中的每一行绘制了一个复选框
"fnRender": function ( oObj ) {
        return '<input id="chkBox" name="chkBox" value="'+ oObj.aData[0] +'" type="checkbox" />'; }

在onchange事件中,我将复选框的值更改为“Y”,就像这样。

$('#myDataTable input:checkbox').live('change', function (event) {

                              if($(this).is(":checked")) {
                                    $(this).val("Y");                                       
                                }    

                            }); 

我现在必须检查其复选框值为“Y”的所有行并提交相同的行。但是,当我尝试针对每个tr检索复选框的值时,在表单提交上,就像这样

$('#myDataTable tr').each(function() {                                                        
                      var aData = oTable.fnGetData(this); 

fnGetData返回的数组不包含复选框的更新值。

但是,当我将Firebug中作为参数传递的this的值评估为fnGetData时,它会显示复选框的更新值。

我无法理解fnGetData的这种行为,为什么它没有显示复选框的更新值

任何人都可以帮忙

1 个答案:

答案 0 :(得分:1)

找到问题的根本原因。

fnGetData被称为oTable.fnGetData(),而oTable等于我绘制的初始数据表。

因此每当我调用fnGetData()时,它都会返回Datatables的原始值

我现在循环遍历每个tr并获取当前值。