использовать XML для вызова AJAX - PullRequest
0 голосов
/ 14 июня 2009

Мне нужна помощь с этим кодом, потому что по какой-то причине я не получаю данные обратно Возможно, это что-то перепутало, потому что я никогда не использовал xml с ajaxcall

Может ли кто-нибудь проверить, видит ли здесь что-то не так

function updateGebruikersonline(){
    //voor het fade effect
    gebruikerslijst.hide();
    loading2.fadeIn(2000, function () {
        //stuur de post variabelen naar livetabs.php
        $.ajax({
            type: "POST", url: "/includes/livetabs.php", data: "actie=gebruikersonline",
            complete: function(xml){
                loading2.fadeOut(2000);
                gebruikerstoevoegen(xml);
            }
            ,error: function(XMLHttpRequest, textStatus, errorThrown) { 
                if(textStatus == 'timeout') { 
                    berichtlijst.html(fout).fadeIn(2000);
                }else if (textStatus == 'error'){
                    berichtlijst.html(fout).fadeIn(2000);   
                } 
            }
        });//EINDE ajax
    });//EINDE callback loading
}

Отредактировано: потому что я нашел ответ

Я полностью упустил из виду, что мне пришлось использовать эту строку в файле php, чтобы браузер распознал ее как xml.

 //php
    header('Content-Type: application/xml; charset=ISO-8859-1');

спасибо, Ричард

1 Ответ

1 голос
/ 14 июня 2009

Здесь вы можете найти полную ссылку, и я думаю, что вам нужно использовать success свойство, а не полное, так как оно имеет другую семантику.

function updateGebruikersonline(){
        //voor het fade effect
        gebruikerslijst.hide();
        loading2.fadeIn(2000, function () {
                //stuur de post variabelen naar livetabs.php
                $.ajax({
                        type: "POST", url: "/includes/livetabs.php", data: "actie=gebruikersonline",
                        success: function(xml){
                                loading2.fadeOut(2000);
                                gebruikerstoevoegen(xml);
                        }
                        ,error: function(XMLHttpRequest, textStatus, errorThrown) { 
                                if(textStatus == 'timeout') { 
                                        berichtlijst.html(fout).fadeIn(2000);
                                }else if (textStatus == 'error'){
                                        berichtlijst.html(fout).fadeIn(2000);   
                                } 
                        }
                });//EINDE ajax
        });//EINDE callback loading

Если вы хотите использовать complete, вам нужно написать:

                        complete: function(response){
                                loading2.fadeOut(2000);
                                gebruikerstoevoegen(response.responseXML);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...