Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Aiuto su condizione success/failure

    Salve a tutti,
    avrei bisogno di una mano...concettuale su come procedere in un passaggio del mio codice.
    Ora...io sto iniziando in questi giorni a scrivere codice in js/jQuery, diciamo che mastico più o meno la materia...nel frattempo mi sto sparando un po' di tutorial e manuali vari.

    Ho due pagine, una html con solamente un <ul id=miaLista> e un file script.js dove faccio quanto segue:

    leggo da una pagina asp che mi genera del codice json e ne faccio il parse nella lista sopracitata. Funziona tutto perfettamente.

    La mia domanda è: come faccio in javascript ad avere la condizione tale che se il parse del json funziona, mi popola come adesso la lista, altrimenti, se per qualche motivo il collegamento al file remoto non va, mi risponde in altra maniera, magari in un div, un messaggio di errore.

    Come posso procedere?

    Grazie mille
    Ale

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    quindi se non ho capito male stai effettuando una chiamata ajax... per farlo stai utilizzando jquery?

    se è cosi il parse del json è inutile in quanto lo fa il framework, per la gestione degli errori ti basta gestire il parametro error associandoci una funzione che mostra il div.

  3. #3
    Grazie innanzitutto per la risposta.
    Faccio che postarti il codice che ho scritto, vediamo dove possiamo andare a gestire sta condizione, come dici tu.

    ##### pagina html ######
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Documento senza titolo</title> </head>
    <body>
    <ul id="miaLista">[/list]
     </body> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script src="script.js"></script>
     </html>

    ##### script.js ########
    codice:
    (function($){ 
    link_to_ct = { 
    myUrl : "http://www.miodominio.it/genera_codice_json.asp", 
    count : 10 
    },
    miaLista = document.getElementById('miaLista'), 
    url2 = link_to_ct.myUrl + "?count=" + link_to_ct.count; 
    
    $.getJSON(url2, function(data){ 
    var eventi = [];
    $.each(data.feed, function(index){
    if (index === link_to_ct.count) return false;
    eventi.push('[*]Cosa? '+ data.feed[index].cosa +'. Dove? '+ data.feed[index].dove +''); }); 
    miaLista.innerHTML = eventi.join(''); }); 
    
    })(jQuery);

    Detto questo, lo script funziona, nessun problema.
    Mi carica tranquillamente tutto.
    Io vorrei però trovarmi in una situazione tale che l'utente veda una GIF tipo loading.gif durante il caricamento, e poter restituire un messaggio di errore nel caso in cui il caricamento non abbia avuto successo.

    Come posso fare?
    Grazie ancora!

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    puoi provare ad usare i deferred object visto che le chiamate ajax di jquery ritornano una promise


    codice:
    /* mostra loader */
    
    $.getJSON("url")
       .done(function() { 
           /* nascondi loader */
           /* fai qualcosa */
       })
       .fail(function() {  
          /* errore, fai qualcos'altro */
       })
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Uau, provo subito, poi ti faccio sapere come è andata.
    Magari posso poi postare il codice...per i posteri....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.