以下は、削除メッセージ '$(".imagemsg" + counter).html(data);
'を表示しているコードです。しかし、ファイルが2番目の行でのみ削除された後に削除メッセージを表示しています。これは間違っています。ファイルが削除された行にのみ表示する必要があります。2行目の削除メッセージのみを表示します
たとえば、ファイルが3行目から削除された場合は、3行目にメッセージが表示され、6行目からファイルが削除された場合は、6行目などに削除メッセージが表示されます。ファイルがどの行から削除されても、2行目だけが削除メッセージを表示します。
var counter = 0;
function stopImageUpload(success, imagefilename){
var result = '';
counter++;
if (success == 1){
result = '<span class="imagemsg'+counter+'">The file was uploaded successfully!</span><br/><br/>';
$('.listImage').eq(window.lastUploadImageIndex).append('<div>' + htmlEncode(imagefilename) + '<button type="button" class="deletefileimage" image_file_name="' + imagefilename + '">Remove</button><br/><hr/></div>');
}
else {
result = '<span class="imageemsg">There was an error during file upload!</span><br/><br/>';
}
$(".deletefileimage").on("click", function(event) {
var image_file_name = $(this).attr('image_file_name');
jQuery.ajax("deleteimage.php?imagefilename=" + image_file_name)
.done(function(data) {
$(".imagemsg" + counter).html(data);
});
$(this).parent().remove();
});
return true;
}
結果変数はimageupload.phpにここに呼ばれている:
CALLBACK:
<script language="javascript" type="text/javascript">window.top.stopImageUpload(<?php echo $result ? 'true' : 'false'; ?>, '<?php echo $_FILES['fileImage']['name'] ?>');</script>
私はあなたの方法を試しましたが、それでも同じ問題が発生しています。ここには、アプリケーション[ここ](https://helios.hud.ac.uk/u0867587/Mobile_app/QandATable3.php)へのリンクがあります。アプリケーションを開くときに、「追加」ボタンを2回クリックし、最初の行のファイル入力にファイルをアップロードすると、ファイル名が最初の行の下に表示されます。次に、2行目のファイル入力で別のファイルをアップロードすると、そのファイルのファイル名が2行目の最後に表示されます。しかし、両方のファイルを削除すると、メッセージ(削除されたファイル)はまだ2行目にのみ表示されます。これが助けて欲しいと思っています:) – user1373827
完全なコードを見たところで私の答えが更新されました。 –
偉大な、これは完璧に動作します。ありがとう:) – user1373827