2017-03-08 99 views
0

我有一个上传控件,每次成功上传文件时都会触发它。用户可以随时上传1个或多个文件。并且以下js功能被称为function OnFileUploadComplete(s, e){}。在这个函数中,创建一个ajax调用并获得一个值为List<T>的值。我要循环的结果从我的AJAX效应初探设置,并将其显示到我已经做实现了表以下将项目添加一次到表

function successCallBack(result) { 
    var table = $("#attachments-table"); 

    $.each(result.Attachment, function (index) { 
     var base64String = btoa(String.fromCharCode.apply(null, new Uint8Array(result.Attachment[index].Thumbnail))); 
     var rows = $('<tr></tr>'), 
      button = $('<input class="btn btn-danger delete-attachment">').attr({ 
        type: 'button', 
        id: result.Attachment[index].Id, 
        name: result.Attachment[index].Id, 
        value: result.Attachment[index].Id }); 

      rows.append('<td>' + result.Attachment[index].AttachmentName + '</td>'); 
      rows.append('<td><img class="img-responsive" src="data:image/png;base64,' + base64String + '"></td>'); 
      $('<td></td>').html(button).appendTo(rows); 
      table.append(rows); 
    }); 
} 

这工作细到一个点。但是,如果我有多个项目,它会一遍又一遍地添加它们。所以我的问题是如何添加不在表中的项目。

注:在页面加载时,由Ajax响应数据填充表是空的

+0

是那些项目,独特或重复,如果重复的意志?他们有相同的ID还是不同的? –

+0

@subrahmanyabhat项目是唯一的,并且永远不会有相同的标识,即使附件名称是唯一的 – Code

+0

然后每次向表格中添加新项目时都是如此。 –

回答

1

尝试这样的事情

function successCallBack(result) { 
    var table = $("#attachments-table"); 

    $.each(result.Attachment, function (index) { 
     var base64String = btoa(String.fromCharCode.apply(null, new Uint8Array(result.Attachment[index].Thumbnail))); 
     var rows = $('<tr></tr>'), 
      button = $('<input class="btn btn-danger delete-attachment">').attr({ 
        type: 'button', 
        id: result.Attachment[index].Id, 
        name: result.Attachment[index].Id, 
        value: result.Attachment[index].Id }); 

      rows.append('<td>' + result.Attachment[index].AttachmentName + '</td>'); 
      rows.append('<td><img class="img-responsive" src="data:image/png;base64,' + base64String + '"></td>'); 
      $('<td></td>').html(button).appendTo(rows); 
if($("#"+id).length==0){ 
      table.append(rows);} 
    }); 
} 
+0

这就是我一直在寻找的,非常感谢! – Code