将项目添加一次到表



我都有一个上传控件,每当文件成功上传时。用户可以随时上传1个或更多文件。以下js funciton称为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响应数据填充

尝试类似的东西

    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);}
  });
}

最新更新