如何在jquery数据表中找到单选按钮的列索引

时间:2014-12-05 15:24:08

标签: jquery datatables jquery-datatables

您好我想知道单选按钮在数据表中选择的列索引。

这是我的数据表代码:

$(document).ready(function() {
    table = $('#ReportTable').dataTable({
        "bProcessing": true,
        "bPaginate": false,
        "bJQueryUI": true,
        "ajax": {
            url: 'ajax_call.php',
            type: "POST",
            data: {
                action: 'loadEmailData'
            }
        },
        "columnDefs": [{
                "aTargets": [0],
                "mRender": function(data, type, full) {
                    id = full[3];
                    var returnval = "<td><input type='radio' name='chkNew" + id + "'  class='call-checkbox' value=" + id + "  id=\"chkNew'" + id + "'\" /></td>";
                    return returnval;
                }

            }, {
                "aTargets": [1],
                "mRender": function(data, type, full) {
                    id = full[3];
                    var returnval = "<td><input type='radio' name='chkNew" + id + "'   class='call-checkbox'  value=" + id + "  id=\"chkSubmit'" + id + "'\" /></td>";
                    return returnval;
                }

            }, {
                "aTargets": [2],
                "mRender": function(data, type, full) {
                    id = full[3];
                    var returnval = "<td><input type='radio' name='chkNew" + id + "' class='call-checkbox' value=" + id + " id=\"chkDeploy'" + id + "'\"/></td>";
                    return returnval;
                }

            }

        ]
    });
});

这是获取所选列的所选列索引和id的函数:这​​里警告列的索引如0,1。如果我点击第1列和第3列也是警告为0,1,它应该警告0,2

rowcollection.each(function(index,elem){
    var checkbox_value = $(elem).val(),
        globalindex = $(this).closest('tr')find('input[type="radio"]').index(this);

    arr[globalindex]=checkbox_value;

    alert(globalindex);
});

1 个答案:

答案 0 :(得分:0)

您可以使用change

在单选按钮上触发.delegate事件
$( "#ReportTable" ).delegate("input[type='radio']", "change", function() {
    var $this = $(this);
    var id = $this.val();
    // do sth
});
  

.delegate()

     

为所有匹配的元素附加处理程序到一个或多个事件   选择器,现在或将来,基于一组特定的根   元素。 More