IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] arreter l'exécution d'une fonction Ajax


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 160
    Par défaut [AJAX] arreter l'exécution d'une fonction Ajax
    Salut les gars ,
    J'utilise Ajax tags dans des jsp , mon problème est d'effectuer un test avant le lancement de la fonction ajax , mais le truc que j'arrive pas à stoper l'exécution du code Ajax si mon test est faus , je vous donne l'exemple

    voilà mon jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <input type="button" onclick="javascript:setCountrySelection();//nop/" class="searchLink" id="searchLink" value="Search">				
     
    <ajax:htmlContent
      baseUrl="${pageContext.request.contextPath}/POHtmlcontent.view"
      sourceClass="searchLink"
      target="searchResult"
      preFunction="initProgressSearch"
      postFunction="resetProgressSearch"
      errorFunction="reportError"
      parameters="section=displayResultForPO,brand={brand},product={product},company={company},searchCountryList={countryPricingSelection},pricetype={priceTypeIdList},ertype={ERType},pricestatus={pStatus},erperiod={ERPeriod},currency={submitedCurrency},channel={channel},date={periodDate},records={record},datamode={selectedDatamode},datatype={selectedDatatype}"
      />
    et voilà la fonction js prefunction de la tag ajax :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function initProgressSearch() {
    	if(checkMandatoryDate(document.getElementById('periodDate'), true )){
    		show('globalWaiting');
    		postCheckedPriceType();
    		document.getElementById('searchLink').disabled = true;
    		Element.show('progressMsgSearch');
    	} else {
    	return false;	    
    	}
     }
    J'ai tout essayé mais ça marche pas toujours
    est ce qu'il y a une idée

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    l'objet XMLHttpRequest possède une méthode abort()Par contre, dans ton cas, je ne sais pas comment tu peux l'utiliser

    A+

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 160
    Par défaut
    Merci pour te réponse ,
    moi j'utilise pas Ajax avec du javascript c'est avec ajaxtags, et à priori il propose pas une méthode pour interompre l'exécution,

    J'ai eu une idée pour détourner le problème, et c'est en fait, effectuer le test et si c'est faux desactiver le bouton et comme ça on évite de passer par l'evenement, mais cette soution est impossible dans mon cas pke tout simplement ne voulait pas cette solution ,

    Au secours SVP

  4. #4
    Membre Expert Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Par défaut
    A priori, c'est un probleme avec ta librairie ajaxtag pour lequel on ne peut pas trop t'aider puisque la décision d'effectuer ou non la requete dépend de la facon dont est codé ton tag

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2007
    Messages
    160
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 160
    Par défaut
    J'ai remarqué que si on provoque une erreur javascript , l'exécution de la methode ajax s'arrete , autrement on peut pas provoquer un evenemnt pareil à l'erreur avec javascript mais sans biensur avoir une erreur , ou autre chose qui a les effets d'uen erreur js !!!

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par amine84 Voir le message
    J'ai remarqué que si on provoque une erreur javascript , l'exécution de la methode ajax s'arrete ,
    Bine sûr, puisque qu'Ajax est lié à l'exécution d'un code JavaScript.
    Or une erreur plante le code JS de toute la page (donc celui effectuant le traitement Ajax).

    Mais planter ton appli via un bug volontaire pour interrompre l'exécution d'un traitement est quand même un peu ... osé

    Cherche un peu plus du côté ajaxtags ...

    Sinon, peut-être en écrasant (en réutilisant) ton objet xhr ...

    EDIT : ou en changeant la logique de ton traitement Ajax : en modifiant le mode de réponse, pour ne plus avoir à interrompre le traitement quand ton test est faux ...
    Bref, en prenant le problème en amont

    A+

Discussions similaires

  1. [AJAX] Stopper l'éxécution d'une fonction AJAX
    Par crazymonkey dans le forum AJAX
    Réponses: 2
    Dernier message: 13/08/2009, 14h16
  2. [AJAX] passer un argument a une fonction de callback ?
    Par mld_webcom2d dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 11/02/2009, 17h05
  3. [AJAX] [XAJAX] Lancer une fonction JS dans une fonction AJAX
    Par sixieme-sens dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/12/2008, 15h26
  4. [AJAX] valider un formulaire avec une fonction ajax
    Par freums dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 18/02/2008, 11h34
  5. [AJAX] Envoi ou non d'un formulaire avec une fonction AJAX
    Par ohhh.gringo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 16/05/2007, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo