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

    [JQUERY AJAX] Chiamate multiple

    Un saluto a tutti.
    Mi sto avvicinando da poco nel magico mondo jquery ajax. Fino ad adesso ho sempre utilizzato con successo una chiamata ajax che processava un file php e che mi dava un risultato in un determinato div.

    Il problema, adesso, e che sto da giorni cercando di fare tre chiamate ajax a tre file php che dovrebbero restituire i propri risultati in tre div diversi... ma non ci riesco... il funzionamento dovrebbe essere per sommi capi quello di questo sito www.sonnybono.it sezione store.

    Nessun problema sulla prima chiamata...il problema sorge quando devo effettuare le successive chiamate dai link generato dal div della prima chiamata...

    Spero di essere stato chiaro.

    Grazie per le eventuali risposte e buona giornata

  2. #2
    posta un po di codice
    V.I.S.T.A. --> Virus Inside, Switch To Apple

  3. #3
    questo lato javascript:
    codice:
    $(document).ready(function(){     
        $('#a .ajax').click(function(){	 	   	
        var page = $(this).attr('href');	 		
        $('#menu_interno').load(page+' #menu_interno').fadeIn("slow");
        $('#citta').load(page+' #citta').fadeIn("slow");		 		
        $('#indirizzi').load(page+' #indirizzi').fadeIn("slow");		  		
       return false; 	
      }); 	 
    });
    Lato html php
    codice:
    <div id="regioni">
          <a href="regione.php?id=1" class="ajax">
          ecc.
    </div>
    <div id="menu_interno"></div>
    <div id="citta"></div>
    <div id="indirizzi"></div>
    Nei div popolati dalla pagina regione.php ci sono a loro volta nuovi link con class ajax e che puntano ad un'altra pagina php...ma qui ci perde la chiamata asincrona...
    Grazie per l'aiuto!

  4. #4
    si...ma qui nn c'è chiamata ajax......devi postare la funzione che chiama il file php
    V.I.S.T.A. --> Virus Inside, Switch To Apple

  5. #5
    mmm...scusami ma la classe "ajax" nel href lancia la pagina regione.php che popola i div.
    Ora non sò...pensavo che in jquery le chiamate si facessero cosi... scusami se non ti ho capito!

  6. #6
    Codice PHP:

    function funzione() {
        $.
    ajax({
            
    type "GET",
            
    url "file.php",
            
    success : function(data){  //data è la variabile che conterrà il risultato
                
    $("#div_contenitore").html(data);
            },
            
    error:  function(data){
                $(
    "#div_contenitore").html("An error occurred");
            }
        });

    Falla cosi la chiamata ajax. Ad ogni link (<a href="regione.php?id=1" class="ajax">) metti ad esempio:

    Codice PHP:
     [url="javascript:funzione()"]TESTO DEL LINK[/url]  //javascript senza trattino...non so perche ma il forum me lo aggiunge in automatico 
    ovviamente la funzione puo accettare dei parametri se hai bisogno di dinamicità. Questo per la prima chiamata ajax. poi se all'interno del div contenitore avrai altri link che servono a popolare con del codice html un altro div, ti serve un'altra funzione ajax.

    http://api.jquery.com/category/ajax/
    V.I.S.T.A. --> Virus Inside, Switch To Apple

  7. #7
    ho provato, ma gli id non li prende e per me sono indispensabili, ho provato a mettere nella funzione data: { name: $('a#name').val()}, ma se faccio l'echo di GET name nella pagina regioni.php mi restituisce undefined.

    Se qualche anima pia postasse un esempio del mio caso, ne sarei grato.... altrimenti penso prorpio che ci rinuncio...

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    19
    Originariamente inviato da Mofofly83
    [...] ho provato a mettere nella funzione data: { name: $('a#name').val()}, ma se faccio l'echo di GET name nella pagina regioni.php mi restituisce undefined.
    Credo che il problema sia che devi recuperare nella funzione il valore dei campi che poi verranno spediti al file php che li elaborerà. Dovresti usare una funzione .submit piuttosto che una .click, usando dei form:

    codice:
    $("#form").submit(function( ) {
    	
    var name = $('a#name').val(); // Questo è il valore del campo che vuoi passare al php
    
    $.ajax({ type: "POST", 
    	     url:"files.php", 
    	   	 data:"name ="+name , // passa il valore della variabile name
    		 complete: function(data)
    		 	{$("#div_contenitore").html(data.responseText);}	
    	  });   return false; 
    });

  9. #9
    vabbè ci avevo già pensato, ma non mi conviene considerando la complessità della cosa. Cmq grazie lo stesso.

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    19
    Allora non capisco quale sia il tuo problema. Il valore id che mandi in get lo mandi invece in post attraverso un campo hidden. Magari rivediti la gestione del dato lato php.

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.