2010-06-01 7 views
0

je les suivantes jQuery établissement d'appel ajax:Aide avec jQuery Ajax appel ASMX qui retourne la chaîne

function Testing() { 
    var result = ''; 

    $.ajax({ 
      url: 'BookingUtils.asmx/GetNonBookableSlots', 
      dataType: 'text', 
      error: function(error) { 
        alert('GetNonBookableSlots Error'); 
      }, 
      success: function(data) { 
       alert('GetNonBookableSlots'); 
       result = data; 
      } 
      }); 

     return result; 
} 

Voici le service Web que je suis en train d'appeler:

[WebMethod] 
    public string GetNonBookableSlots() 
    { 
     return "fhsdfuhsiufhsd";    
    } 

Quand je lance le code jQuery, il n'y a pas d'erreur ou d'événement de succès déclenché (aucune des alertes n'est appelée). En fait, rien ne se passe du tout, le code javascript se déplace juste pour retourner la déclaration à la fin.

Je mets un point d'arrêt dans le code du service Web et il est touché, mais quand je quitte cette méthode, je finis dans l'instruction return. Est-ce que quelqu'un peut me donner quelques conseils sur la façon dont je devrais configurer l'appel ajax correctement, car je pense que je me trompe. Le webservice a juste besoin de renvoyer une chaîne, aucun XML ou JSON impliqué.

Cheers. Jas.

Répondre

1

Juste pour le débogage, essayez ceci:

 
$.post('BookingUtils.asmx/GetNonBookableSlots', function(data) { 
    console.log(data); 
}, 'text); 

Utilisez la console Firebug ou HTML Inspecteur pour afficher la sortie. De plus, Firebug ou HTML Inspector peuvent vous donner d'autres indices sur le problème. Vous pouvez inspecter le résultat renvoyé pour voir s'il y a eu une erreur HTTP.

+0

+ 1 Je viens de lancer la page dans FireFox (pour tester votre idée d'utiliser Firebug) et l'appel Ajax fonctionne bien. Donc j'ai pensé que ce pourrait être un problème d'IE - juste essayé la page encore dans IE (sans débogage de VS) et l'appel d'Ajax fonctionne. Hmm, peut-être un casse-tête en ce que ça pourrait être VS qui causait le problème. Je vais garder un oeil sur cela, mais merci pour le conseil ci-dessus. –

Questions connexes