【问题标题】:Jquery of datatables unable to retrieve row数据表的 Jquery 无法检索行
【发布时间】:2015-02-07 08:13:57
【问题描述】:

这是我的代码,我正在使用 Datatable ajax 函数,并决定使用这种方式来检索数据 [2] 的电子邮件,它会提示单击和未定义

$('#example tbody').on('click', 'tr', function() {
        alert('clicked');
        var data = table.row( this ).data(); 
        //table.fnGetData(this);
        //table.row( this ).data()      
        var email = "mailto:"+(data[2]);
       // console.log(newPage);
        alert(email);
        window.location.href = email;
    });

这是我的数据表 ajax

    var table=$('#example').DataTable({


        "processing" : true,
        "serverSide" : false,

        "ajax" : {
            "url" : "CompareSchool?year="+year,
            "type" : "get",
        },
        "columns" : 
            [

                {
                    "data" : "name"
                }, 
                {
                    "data" : "number"
                },
                {
                    "data" : "email"
                }, 
                {
                    "data" : "year"
                } 
            ]
    }

    );

【问题讨论】:

    标签: jquery ajax datatables


    【解决方案1】:

    尝试对电子邮件列使用以下选项,这样您就不需要使用 java 脚本调用电子邮件点击事件:

    {
        "data" : "email",
        "render": function ( data, type, full, meta ) {
            return ( type === 'display' ) ? '<a href="mailto:'+data+'" title="'+data+'">'+data+'</a>' : data;
    }
    

    【讨论】:

    • 谢谢它的工作,但你能告诉我这个函数是如何工作的吗?为什么不工作哈哈哈 :) 还是谢谢
    • mRender 将在您使用 aoColumnDefs 选项定义列时工作,因为在数据表中,一些选项用于其 jQuery 对象实例,而一些选项用于 API 实例。
    • 我确实使用了“aoColumnDefs” 这里是代码“aoColumnDefs”的一部分: [ { "aTargets": [ 2 ], "mRender": function (data, type, full) { return ' ' + "数据" + ''; } }
    • 我才意识到 cmets 不能缩进
    猜你喜欢
    • 1970-01-01
    • 2011-01-31
    • 1970-01-01
    • 1970-01-01
    • 2012-10-06
    • 2017-10-11
    • 2023-03-30
    • 1970-01-01
    • 2023-03-27
    相关资源
    最近更新 更多