1

私は以下のコードを持っています:

$.ajax({
    url: 'upload.php',  //Server script to process data
    type: 'POST',
    xhr: function() {  // Custom XMLHttpRequest
        var myXhr = $.ajaxSettings.xhr();
        if(myXhr.upload){ // Check if upload property exists
            myXhr.upload.addEventListener('progress',progressHandlingFunction, false); // For handling the progress of the upload
        }
        return myXhr;
    },
    //Ajax events
    beforeSend: function(e) { $('#progress').css('display', 'block'); },
    success: function(e) {
        if (e != "bad" || e != "No") {
            alert('File Upload Success!');
            $('#imgsrc').attr("src", e);
            $('#img').val(e);
        } else {
            alert('File Failed, Upload File of Size < 1MB');
        }
    } ,
    error: function(e) { alert('error' + e.message); } ,
    // Form data
    data: formData,
    //Options to tell jQuery not to process data or worry about content-type.
    cache: false,
    contentType: false,
    processData: false
});

else に行く代わりに、応答時にbad& No. 別の障害でととして画像を表示File Upload Success!および追加します。srcbadNo

If else で何か間違ったことをしていますか :-

upload.php からの応答は :- FileNamebad、 &Noです。

ありがとう

4

3 に答える 3

10

あなたの||はずです&&

あなたが言っているのは、応答がこれではない場合、またはそれ以外の場合、それは定義上常に真であるということです。

于 2013-10-01T12:33:23.760 に答える
2

&&上記のor ( ||)を使用しているため、が必要です

eがの場合Bad、それはnot No.... が の場合eNoそれはnot Bad...そうであるNoか、Bad 常にフィルタースルーされます。

if (e != "bad" || e != "No") {

する必要があります...

if (e != "bad" && e != "No") {
于 2013-10-01T12:33:30.237 に答える
0

eNoまたはBadです。eNoの場合、明らかに悪いわけではなく、or (||) 演算子を使用するため、if ステートメントは常に true です。つまり、「 eNoでないか、Badでない場合、これを true と見なしてください。

使用する:

if (e != "bad" && e != "No") {
于 2013-10-01T12:35:51.633 に答える