2012-05-14 39 views
0

下面我有一個PHP腳本稱爲cancelimage.php它會顯示取消消息:如何顯示消息並使用DOM檢索文件名?

<?php 

$image_file_name = $_GET["imagefilename"]; 

    echo "$image_file_name Upload was Canceled"; 


?> 

的問題是,當我點擊「取消」按鈕,它不會顯示此消息。相反,它會顯示消息「文件上傳過程中出現錯誤」。我相信這個消息出現的原因是因爲我說「return 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' /> 

回答

0

這個問題似乎是這樣的:

if (success == 1) { 

這:

return stopImageUpload(); 

stopImageUpdate有2個參數 - 第一次成功,如果你打電話沒有成功將是未定義的(不是1)。修復可能是這樣的:

return stopImageUpload(0, image_file_name); 

而在你stopImageUpload改變別的東西,如:

result = '<span class="imageemsg">' + image_file_name + ' Upload Was Cancelled!</span><br/><br/>'; 

HTH