如何在ASP.NET MVC中使用jQuery DataTables表插件为特定列设置数据?

如何在ASP.NET MVC中使用jQuery DataTables表插件为特定列设置数据?,jquery,asp.net-mvc,datatables,Jquery,Asp.net Mvc,Datatables,我是jquerydatatables插件的新手。我遇到了一个问题,我被卡住了,不知道如何继续 首先,这是我的控制器类内部的实现(playlid是GUID类型) 这是返回的JSON数据的结构 { "sEcho": "1", "iTotalRecords": 3, "iTotalDisplayRecords": 3, "aaData": [ ["ChorusLab", 86400, 3, "Solta", "4020b281-2af6-478e-a9a2-b3582d5941db"],

我是jquerydatatables插件的新手。我遇到了一个问题,我被卡住了,不知道如何继续

首先,这是我的控制器类内部的实现(playlid是GUID类型)

这是返回的JSON数据的结构

{
"sEcho": "1",
"iTotalRecords": 3,
"iTotalDisplayRecords": 3,
"aaData": [
    ["ChorusLab", 86400, 3, "Solta", "4020b281-2af6-478e-a9a2-b3582d5941db"],
    ["Solta Landscape", 60, 2, "Solta", "3fd61499-fa1e-4584-bcad-57cdd40d2b4b"],
    ["Solta Portrait", 0, 0, "Solta", "1b08e36a-dbe4-4846-a91e-24ec69453407"]
]
}

如您所见,aaData是元素3的数组,每个元素也是一个数组。我想将此数组中的GUID元素绑定到我的页面中的锚定标记

.cshtml页面中的脚本实现

<script language="javascript" type="text/javascript">
$(document).ready(function () {
    var oTable = $("#tblPlaylist").DataTable({
        "iDisplayLength": 10,
        "bServerSide": true,
        "sAjaxSource": "@Url.Content("PlayListAjaxHandler")",
        "bProcessing": true,
        "bStateSave": true,
        "aoColumns": [
            {
                "sName": "PlayListName",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '30%'
            },
            {
                "sName": "PageRef",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '10%'
            },
            {
                "sName": "NextImg",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '10%'
            },
            {
                "sName": "Subscription",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '20%'
            },
            {
                "sName": "Action",
                "bSearchable": false,
                "bSortable": false,
                "sWidth": '30%',
                "render": function (data) {
                    return '<a href=\"PlayListEdit/' + data[4] + '\">Edit</a><b>&nbsp;&nbsp;</b>' +
                           '<a href=\"ViewContent/' + data[4] + '\">View Files</a><b>&nbsp;&nbsp;</b>' +
                           '<a href=\"Play/' + data[4] + '\">Play</a>';
                }
            }
        ]
    });
});

$(文档).ready(函数(){
var oTable=$(“#tblPlaylist”).DataTable({
“iDisplayLength”:10,
“bServerSide”:正确,
“sAjaxSource”:“@Url.Content(“playlayAjaxHandler”),
“bProcessing”:正确,
“bStateSave”:正确,
“aoColumns”:[
{
“sName”:“播放名”,
“可听”:是的,
“可移植”:是的,
“瑞士”:“30%”
},
{
“sName”:“PageRef”,
“可听”:是的,
“可移植”:是的,
“瑞士”:“10%”
},
{
“陷阱”:“下一步”,
“可听”:是的,
“可移植”:是的,
“瑞士”:“10%”
},
{
“sName”:“订阅”,
“可听”:是的,
“可移植”:是的,
“瑞士”:“20%”
},
{
“sName”:“Action”,
“可搜索”:错误,
“可移植”:错误,
“瑞士”:“30%,
“渲染”:函数(数据){
返回“”+
'  ' +
'';
}
}
]
});
});

我的问题是,我不确定这是否是将返回的数据(特别是playlid)绑定到3个锚定标记(编辑、查看文件、播放)中的正确方法

{
“sName”:“Action”,
“可搜索”:错误,
“可移植”:错误,
“瑞士”:“30%,
“渲染”:函数(数据){
返回“”+
'  ' +
'';
}
}
我已经检查了文档,但是我找不到正确的方法


非常感谢您的帮助。

这是一个很好的地方。但要使用数据[4],必须添加渲染函数的参数(数据、类型、完整、元),并使用我认为完整的[4]等@rad11为什么我在文档中没有看到这一点。也许,我一点也不难看。通过将这一行“function(data,type,full,meta)”放在我的渲染函数中并使用full参数,playlid GUID现在绑定到三个锚标记。非常感谢。@rad11谢谢你的回答,我真的很感激。我还有一个关于DataTable的问题,我在SO发布了这个问题。也许你已经遇到过这个了?任何想法都非常感谢
<script language="javascript" type="text/javascript">
$(document).ready(function () {
    var oTable = $("#tblPlaylist").DataTable({
        "iDisplayLength": 10,
        "bServerSide": true,
        "sAjaxSource": "@Url.Content("PlayListAjaxHandler")",
        "bProcessing": true,
        "bStateSave": true,
        "aoColumns": [
            {
                "sName": "PlayListName",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '30%'
            },
            {
                "sName": "PageRef",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '10%'
            },
            {
                "sName": "NextImg",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '10%'
            },
            {
                "sName": "Subscription",
                "bSearchable": true,
                "bSortable": true,
                "sWidth": '20%'
            },
            {
                "sName": "Action",
                "bSearchable": false,
                "bSortable": false,
                "sWidth": '30%',
                "render": function (data) {
                    return '<a href=\"PlayListEdit/' + data[4] + '\">Edit</a><b>&nbsp;&nbsp;</b>' +
                           '<a href=\"ViewContent/' + data[4] + '\">View Files</a><b>&nbsp;&nbsp;</b>' +
                           '<a href=\"Play/' + data[4] + '\">Play</a>';
                }
            }
        ]
    });
});
{
                "sName": "Action",
                "bSearchable": false,
                "bSortable": false,
                "sWidth": '30%',
                "render": function (data) {
                    return '<a href=\"PlayListEdit/' + data[4] + '\">Edit</a><b>&nbsp;&nbsp;</b>' +
                           '<a href=\"ViewContent/' + data[4] + '\">View Files</a><b>&nbsp;&nbsp;</b>' +
                           '<a href=\"Play/' + data[4] + '\">Play</a>';
                }
            }