Dans jQuery, utiliser ajaxSend pour prévisualiser l'URL construite par l'appel $ .post

StackOverflow https://stackoverflow.com/questions/73885

  •  09-06-2019
  •  | 
  •  

Question

Comment puis-je construire mon appel ajaxSend, cela semble être l'endroit idéal pour le poser, pour prévisualiser ce qui est renvoyé au courtier? De plus, puis-je arrêter l'appel ajax dans ajaxSend? .. afin de perfectionner ma chaîne d'URL avant de traiter les erreurs du courtier?

Il s'agit de l'URL complète qui, lorsqu'elle est transmise au courtier, renverra le code JSON dont j'ai besoin:

http://myServer/cgi-bin/broker?service=myService&program=myProgram&section=mySection&start=09/08/08&end=09/26/08

Ceci est mon appel $ .post (vous n'êtes pas sûr qu'il crée la chaîne d'URL ci-dessus)

$(function() {
 $("#submit").bind("click",
  function() {
   $.post({
     url: "http://csewebprod/cgi-bin/broker" ,
     datatype: "json",
     data: {
      'service' : myService,
      'program' : myProgram,
      'section' : mySection,
      'start' : '09/08/08',
      'end' : '09/26/08'
      },
     error: function(request){
      $("#updateHTML").removeClass("hide") ;
      $("#updateHTML").html(request.statusText);
      },
     success: function(request) {
      $("#updateHTML").removeClass("hide") ;
      $("#updateHTML").html(request) ;
      }
    }); // End post method
   }); // End bind method
  }); // End eventlistener

Merci

Était-ce utile?

La solution

Un moyen simple de prévisualiser la requête HTTP envoyée est d'utiliser Firebug pour Firefox. Téléchargez et activez le plug-in. Lorsque la demande est faite, il apparaît dans la console Firebug.

Autres conseils

API / 1.2 / Ajax contient des informations sur la manière de lier des événements AJAX.

// Hook into jQuery's ajaxSend event, which is triggered before every ajax
// request.
$(document).ajaxSend(function(event, request, settings) {
  // settings.data is either a query string like "id=1&x=foo" or null

  // It can be modified like this (assuming AUTH_TOKEN is defined eslewhere)
  settings.data =
    ((settings.data) ? settings.data + "&" : "") +
    "authenticity_token=" + encodeURIComponent(AUTH_TOKEN);
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top