2015-09-24 19 views
0

我正在使用Jquery Datatables插件。我正在顯示員工詳細信息列表,並提供了使用上述插件進行編輯的條款。我的問題是Jquery Datatable - 是否可以將鏈接的href屬性動態鏈接到剃鬚刀語法

是否可以根據MVC的剃刀語法動態設置編輯鏈接的href屬性?

如果不是什麼導航到編輯頁面的替代解決方案?

HTML標記是

 table = $("#dataTableMenuRole").dataTable({ 
     "ajax": { 
      "url": "@Url.Action("LoadGridView", "MenuSettings")",     
      "method": "POST", 
      "dataType": "json", 
      "data": function (d) { 
       d.roleId = $("#ddlRoles").val() 
      } 
     }, 
     columns: [ 
      { "data": "MenuName" }, 
      { "data": "CanAdd" }, 
      { "data": "CanEdit" }, 
      { "data": "CanDelete" }, 
      { "data": "CanView" }, 
      { "data": "MenuRoleId" } 

     ],    
     "bProcessing": true, 
     "aoColumnDefs": [{ 
      "targets": 5, 
      "bSortable": false, 
      "render": function (data, type, full, meta) { 
       return '<a class="btn btn-info" 
       href="@Url.Action("Edit", new {id= data })"' >'+ 
       //Here data cannot be assigned as shown 
         '<i class="fa fa-edit"></i>'+ 
        '</a>' 
      } 

     }] 

    }); 

回答

1

你需要使這樣的HTML鏈接(對任何報價錯誤道歉!):

return '<a class="btn btn-info" href="/Edit/' + full[5] + '"><i class="fa fa-edit"></i></a>'; 

full參數是完整的數據源當前行,因此假設MenuRoleId是您要使用的ID,您可以使用full[5]

您可以使用Razor語法創建url,但這意味着數據表javascript代碼需要在View中,這並不理想。