0 votes

La méthode Jquery ajax déclenche toujours le callback error : au lieu du succès :

J'ai un problème lorsque j'utilise la fonction ajax dans jquery. L'appel ajax semble fonctionner correctement, c'est-à-dire que le code qui renvoie un xmldocument s'exécute sans erreur. Voici ce code.

Code Jquery :

function LoadWeekDays(){
    var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
    xmlDoc.async="false";
    xmlDoc.loadXML("<data><item></item></data>");
    var typeitem=xmlDoc.createElement("type"); 
    var employeeiditem=xmlDoc.createElement("employeeid");   
    var timesheetiditem=xmlDoc.createElement("timesheetid");
    typeitem.text = 1;
    employeeiditem.text = nemployeeid;
    timesheetiditem.text = ntimesheetid;
    xmlDoc.documentElement.firstChild.appendChild(typeitem);
    xmlDoc.documentElement.firstChild.appendChild(employeeiditem);
    xmlDoc.documentElement.firstChild.appendChild(timesheetiditem);

    $.ajax({
        type: "POST",
        url: "../ajax/BackPayLoadTables.aspx",
        data: xmlDoc.xml,
        dataType: "xml",
        success: function(xml) {
            alert('success');
        },
        error: function(){
            alert('error');
        }
    }); //close $.ajax(
}

BackPayLoadTables.aspx

    Dim xmlDoc As New XmlDocument()
    Dim xmlDocRet As New XmlDocument()
    xmlDoc.Load(Request.InputStream)
    xmlDocRet = BackPayLoadTables(xmlDoc)

    Response.Clear()
    Response.Write(xmlDocRet)
    Response.End()

La page BackPayLoadTables.aspx appelle une méthode BackPayLoadTables qui renvoie correctement un XMLDocument. Cependant, lorsqu'il revient au code JQuery, il entre dans le callback error : pour une raison quelconque, au lieu du callback success :. Toute aide à ce sujet serait grandement appréciée.

0voto

David Points 1110

Faites ceci dans votre paramètre Error (error:ErrorMsg,)

function ErrorMsg(result) {
        if (result.status == 200 && result.statusText == 'OK') {
            //success code;
        }
        else {
            alert("FAILED : " + result.status + ' ' + result.statusText);
        }
    }

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X