簡體   English   中英

為什么AJAX調用僅在Firefox中給出錯誤超時響應

[英]Why an AJAX call is giving an error timeout response only in Firefox

我的ajax電話

我進行了ajax調用,以檢查電子郵件地址是否已經用於參與。 php文件在不使用時返回0,在已經使用時返回1。 使用該標簽時,將顯示一個錯誤標簽。

這在Chrome,Safari,Internet Explorer中完美運行。 但是,這對於Firefox來說實在是一個痛苦。 它檢查並給出正確的響應,但是5秒鍾后給出超時。

我還有另一個ajax調用,將所有數據放入數據庫中,它有完全相同的問題。

我做錯了什么?

function controleerDeelnemerEmail(){

    var emailVal = $('#email').val();

    $.ajax( {

        type: 'POST',
        url:'?page=home&action=check',
        dataType:'text',
        data: {'email':emailVal}, 
        success: function( data ){

            data = parseInt(data);

            if(data == 1){

                if( $(".emailerror").length == 0 ){
                    var error = "<label for='email' generated='true' class='error emailerror' style=''>Dit e-mailadres wordt al gebruikt</label>"
                    $(error).insertBefore( $('#email') );    
                }                            
            }
        }
    })
}

服務器端

公共功能check(){

    if(!empty($_POST)){

        $content = $this->deelnemerDAO->controleerDeelnemerEmail( $_POST['email'] );

        if( $content == 1 ){
            echo 1;
        }else{
            echo 0;
        }
        exit();
    }        
}

您應該添加錯誤回調以查看返回的答案是否為1。

Ajax可以將錯誤類型視為錯誤。

function controleerDeelnemerEmail() {
    var emailVal = $('#email').val();
    $.ajax({
        type: 'POST',
        url:'?page=home&action=check',
        dataType:'text',
        data: {
            'email': emailVal
        }
    }).done(function (data) {
        // equivalent to success callback
        data = parseInt(data);
        if (data == 1) {
            if ($(".emailerror").length === 0) {
                var error = $("<label>", {
                    'for': 'email',
                    'generated': 'true',
                    'class': 'error emailerror'
                }).text("Dit e-mailadres wordt al gebruikt").insertBefore($('#email'));
            }                            
        }
    }).fail(function (response, status) {
        alert('fail');
    });
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM