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

    Ajax.Updater non chiama pagina nel div

    Ciao ho un problema con una select.
    Quando seleziono una option dalla select, vorrei che la pagina che richiama si aprisse in un div specifico.

    Per spiegarmi meglio posto il codice:
    Codice PHP:
    <?php

    $id 
    $_POST['provincia'];

    $count mysql_query("SELECT COUNT(categoryID) FROM $table2 WHERE categoryID ='$id'");
    $res_count mysql_fetch_row($count);

    $tot_records $res_count[0]; // numero totale di records
    if($tot_records 1) {
    echo 
    "<span class='TESTO11'>Non ci sono negozi inseriti in questa Provincia</span>";
    } else {

    echo 
    "<form name=\"form\" action=\"#\" method=\"post\">\n";

    echo 
    " <select name=\"citta\" size=1 onchange=\"new Ajax.Updater('listcitta', 'list_citta.php', { method: 'post'});\">\n";

    echo 
    " <option value=\"\" selected >Seleziona la citt√†...</option>\n";

    $query DB_Query("SELECT * FROM $table2 WHERE categoryID ='$id' ORDER BY citta ASC");

    $gruppo '';

    while (
    $result DB_Get_Results($query))
    {
    if (
    $result[2] != $gruppo)
    {
    echo 
    "<option value=\"$result[2]\">$result[2]</option>\n";       
    }
    $gruppo $result[2];
    }
    echo 
    " </form>\n";
    }
    ?></p>
    Il <div> listcitta dovrebbe, all'evento onchange, popolarsi con la pagina list_citta.php.
    Invece non succede nulla. Anche l'inspector di firefox non rileva nulla.

    Dove sbaglio?

    Qualcuno può aiutarmi?

    Denghiu a lot!

  2. #2
    puoi scaricarti firebug per vedere se invia la richiesta, comunque, sei consapevole che lista_citta.php non ottiene nessun parametro in post?

  3. #3
    Ciao Artorius

    ce l'ho già firebug. Non mi da niente.

    Ti spiego: la pagina che ti ho postato (quella con la select) è contenuta in un Iframe all'interno della pagina che contiene il div listcitta.

    Quando seleziono una voce dalla select, in teoria con ajax.Updater dovrebbe popolarmi il div, ma non lo fa.

    Il motivo percui ho usato un Iframe al posto di un div, è proprio perchè non riesco ad utilizzare ajax per aggiornare i div.

    Se vuoi ti posto l'indirizzo del sito così vedi di persona la pagina in questione.

  4. #4
    si è meglio... comunque, non è che non fa nulla perché la pagina, che si aspetta un paramentro in post penso, sennò non avrebbe molto senso, non stampa nulla alla richiesta?

  5. #5
    L'indirizzo è questo:

    http://www.italianpetservice.com

    la sezione in questione è "trovanegozio"

    Selezioni nel primo Iframe la regione (es lombardia). Nel secondo Iframe selezioni la provincia (es. Milano). Nel terzo Iframe selezioni la città (es MIlano).
    A questo punto nel div sottostante dovrebbe apparire la pagina list_citta.php.

    Io credo che, anche se non passasse nessun parametro, vedrei comunque la pagina list_citta.php vuota con la sola testata.

    Invece no.

    Mi chiedo se è impostato correttamente la chiamata ajax oppure no.
    Una volta si usava la action del form per richiamare una pagina, ma ora?

    Ho anche pensato di mettere nella <select onchange='this.form.submit();> e nel <form onsubmit=new ajax....ecc al posto di onchange.

    Ma non funziona lo stesso.

    Boh. Non sono molto pratico di ajax con le select.

  6. #6
    Fortuna che usavi firebugs...

    Se definisci lo script fuori dal iFrame non lo vedrai mai all'interno.
    Immagini allegate Immagini allegate

  7. #7
    Scusa non ho capito.

    Cosa intendi con definire lo script?

    La funzione che attiva ajax?

  8. #8
    Ho inserito nella head lo script che mi carica prototype.

    Ora effettivamente firebug mi trova la pagina list_citta.php ma non la visualizza ancora nel div.

    Fammi capire. Il problema è l'IFrame?

    Dovrei sostituire l'Iframe con un div così tutto lo script risiede nella stessa pagina?

  9. #9
    ascolta l'iFrame NON è la pagina, è come aprire un POPUP, lavorare con un'altra pagina.
    Dovresti provare a toglierli tutti e fare un sito che apre pagine diverse invece che solo una pagina con un unico indirizzo, che aggiorna un frame.
    Poi, se usi Ajax, non ti servono iFrame.

  10. #10
    Infatti se potessi eliminarli tutti gli Iframe sarei contento.

    il mio problema era che non sapendo come inserire la chiamata ajax in una select dovevo per forza usarli.

    Adesso proverò a riscrivere tutta la pagina utilizzando div e la chiamata ajax con onchange.

    Comunque grazie per l'aiuto.

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.