jQuery Datatables对单选按钮很奇怪

时间:2011-12-12 13:02:17

标签: jquery radio-button datatables

我使用jQuery Datatables来设置表格样式。 该表的一列包含单选按钮。

<td class="image">
                <input type="radio" name="11" value="a" onclick="updateStatus('11', 'a')" /><img src="/jwz/images/icons/a.png" name="a" alt="a" title="Activeer account" />
                <input type="radio" name="11" value="b" onclick="updateStatus('11', 'b')" /><img src="/jwz/images/icons/b.png" name="b" alt="b" title="Ban account" />
                <input type="radio" name="11" value="w" checked="checked" onclick="updateStatus('11', 'w')" /><img src="/jwz/images/icons/w.png" name="w" alt="w" title="Zet account in de wacht"/>

            </td>

问题是checked属性不适用于表的第一行。在所有其他行中,检查其中一个按钮,但不在第一行中。当我禁用jQuery Datatables时,它可以正常工作。所以,jQuery Datatables就是问题所在。

有人可以帮我解决一下变通方法吗?

1 个答案:

答案 0 :(得分:1)

我有同样的问题,我的jQuery DataTable的第一行中的radiobuttonlist没有在页面加载时显示选中的单选按钮;尽管在检查HTML时,检查=“已检查”是否应用于无线电输入。

绑定我的表时,我现在将一个类(“radioButtonToCheck”)添加到第一个radioButtonList的选定列表项(在C#中):

 listItem.Attributes["class"] = "radioButtonToCheck";

然后jQuery DataTable fnDrawCallback用于重绘该单选按钮的已检查状态。

var roomReportingTable = $('.horizontalScroll table').dataTable({
                "sScrollX": "100%",
                "bScrollCollapse": true,
                "bFilter": false,
                "bPaginate": false,
                "bInfo": false,
                "fnDrawCallback": function () {
                    // first radio button list selection is not rendered, so needs to be re-drawn
                    $('.radioButtonToCheck input').attr("checked", "checked");
                }
            });

有关jQuery DataTables fnDrawCallback的更多信息:http://datatables.net/faqs#ss_events