2016-04-28 83 views
0

我正在用bootstrap创建动态表。 我正在通过ajax请求获取数据,并在制作X引导表后。 它的工作原理如下jQuery append razor mvc

success: function (succ) { 
    $("#showMonth").text(monthArray[currentVisibleMonth - 1] + " " + currentVisibleYear); 
    $("#tables").empty(); 
    var efficiencyDurations = succ.efficiencyDuration; 
    var reportTables = succ.reportArray; 
    var reportDurations = succ.totalDurations; 
    $(succ.reportArray).each(function (i) { 
     $(reportTables[i].data).each(function (datearray) { 
      var date = new Date(parseInt(reportTables[i].data[datearray].Date.substr(6))); 
      var formattedDate = $.format.date(date, "dd-MM-yyyy"); 
      reportTables[i].data[datearray].Date = formattedDate; 
     }); 

     var duration = efficiencyDurations[i]; 
     $("#tables").append('<span class="text-primary"><b>' + reportTables[i].data[0].ClientName + "/" + reportTables[i].data[0].ProjectName + "/" + reportTables[i].data[0].TaskName + '</b></span> <span class="text-danger"><b>(' + duration + ")</b></span>"); 
     $("#tables").append("<table id=table" + i + '><thead><tr class="clickable-row"> <th data-field="Date" class="col-md-1"> Date </th><th data-field="Description" class="col-md-8"> Description</th> <th data-field="Duration" class="col-md-1">Real Duration</th> <th class="col-md-1" data-field="EfficiencyDuration">Duration</th> </tr></thead></table>'); 

     $("#table" + i).bootstrapTable({ 
      data: reportTables[i].data, 
      striped: true 
     }); 
    }); 

现在的问题是,我想使一列可见只为管理员。 但正如我注意到我不能追加jQuery.append()与razorhtml。

任何人都不会有想法如何隐藏/显示列取决于

UserInRole( “”)的?

回答

0

以这种方式尝试它如何。而不是试图在HTML /剃刀一侧生成“UserInRole(”“)”的逻辑,只需在Jquery中完成。对服务器执行Ajax调用以检查用户是否为Admin。如果是这样,请附加列。