如何删除文件名而不是所有文件名?

时间:2012-04-30 21:48:49

标签: javascript

删除文件时遇到问题。我有一个申请[这里] [1]。

要使用该应用程序,请单击“添加”按钮,将出现包含文件输入的表格行。请使用文件输入上传几个小文件,然后单击“上传”按钮。现在您意识到上传文件时,文件名显示在表格行的下方,每个文件名都包含它自己的“删除”按钮。

现在问题是我们想要删除一个文件名,当你点击“删除”按钮时,它会删除所有不正确的文件名。它应该只删除您要删除的文件名。如果您尝试上传其他文件,删除文件名后,文件名也不会显示在下面。

所以我的问题是我应该这样做的正确方法是什么,以便当用户删除文件名时,它只删除与之关联的文件名而不是所有文件名?在用户上传另一个文件时删除文件名后,应显示该文件的文件名。

下面是附加文件名,删除按钮和水平线的代码:

<ul class='listImage' align='left'>

以下是javascript代码:

function stopImageUpload(success, imagefilename){

      var result = '';

      if (success == 1){
         result = '<span class="msg">The file was uploaded successfully!</span><br/><br/>';      
         $('.listImage').append(htmlEncode(imagefilename) + '<button type="button" name="deletefileimage" class="deletefileimage">Delete</button><br/><hr/>'); 
      }
      else {
         result = '<span class="emsg">There was an error during file upload!</span><br/><br/>';
      }

            $(".deletefileimage").on("click", function(event) {

        $(this).parents("form:first").find(".listImage").replaceWith("");

    });

      return true;   
}

2 个答案:

答案 0 :(得分:0)

试试这个:

 $(".deletefileimage").on("click", function(event) {
        $(this).closest(".listImage").remove();
    }); 

答案 1 :(得分:0)

你应该做的是将每个文件/删除按钮包装在他们自己的div中,并在用户按下删除时删除该div。

$('.listImage').append('<div>' + htmlEncode(imagefilename) + '<button type="button" name="deletefileimage" class="deletefileimage">Delete</button><br/><hr/><div>');


在点击事件中

$(this).parent().remove();