以下に、キャンセル メッセージを表示する cancelimage.php という php スクリプトがあります。
<?php
$image_file_name = $_GET["imagefilename"];
echo "$image_file_name Upload was Canceled";
?>
問題は、[キャンセル] ボタンをクリックしても、このメッセージが表示されないことです。代わりに、「ファイルのアップロード中にエラーが発生しました」というメッセージが表示されます。代わりにこのメッセージが表示される理由は、「stopImageUpload を返す」と言っているからだと思います。
では、私の質問は、現在行っているように stopImageUpload に戻るにはどうすればよいかということですが、現在表示されているメッセージの代わりにキャンセル メッセージを表示できるようにするにはどうすればよいでしょうか?
以下は、これを修正しようとする現在の試みですが、失敗しました。以下に、キャンセル ボタン関数と stopImageUpload 関数の両方を示します。
var cancelimagecounter = 0;
function startImageUpload(imageuploadform, imagefilename) {
cancelimagecounter++;
var _cancelimagecounter = cancelimagecounter;
$('.imageCancel').on("click", function (event) {
$('.upload_target').get(0).contentwindow
$("iframe[name='upload_target']").attr("src", "javascript:'<html></html>'");
jQuery.ajax("cancelimage.php?imagefilename=" + image_file_name).done(function (data) {
$(".imageemsg" + _cancelimagecounter).html(data);
});
return stopImageUpload();
});
return true;
}
var imagecounter = 0;
function stopImageUpload(success, imagefilename) {
var result = '';
if (success == 1) {
result = '<span class="imagemsg' + imagecounter + '">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/>';
}
return true;
}
以下は、DOM からファイル名を取得することを想定しているキャンセル ボタンです。
<input type='button' name='imageCancel' class='imageCancel' image_file_name='" + imagefilename + "' value='Cancel' />