Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    Ricaricare in modo asincrono un div: ajax o load?

    Salve a tutti, premetto che di javascript/ajax/jquery non ne so NIENTE

    Ho fatto una ricerca fra i vecchi thread ma non ho trovato quello che cercavo, spero di essere più fortunato stavolta..

    Ho una banale pagina html con un div che contiene un elenco. Le voci di questo elenco vengono "prese" da una tabella di un DB. Vorrei sapere se è possibile ricaricare soltanto questo div (aggiornandone il contenuto, qualora venissero aggiunti record) ogni, ad esempio, 2 minuti.
    Curiosando sui vecchi thread un utente ha menzionato la funzione load() di jquery per ricaricare parte di una pagina, ma dal momento che sono totalmente negato non so dove orientarmi per iniziare..

    Qualcuno di voi sa darmi qualche dritta?
    Grazie

  2. #2
    La funzione load di jQuery effettua una richiesta ajax all'url che gli passi come argomento e carica la risposta nell'elemento selezionato. Quindi se vuoi caricare dati in un div usi:

    codice:
    $('#id_div').load('url', parametri, function() {
        alert('Contenuto caricato');
    });
    L'ultimo parametro è opzionale ed è un callback che viene chiamato quando il caricamento è stato effettuato, nel tuo caso non so se può servire.

    load comunque è ajax quindi non si capisce bene a cosa ti riferisci nel titolo
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

  3. #3
    perdona la mia ignoranza, non lo sapevo.
    il codice che mi hai postato lo devo mettere nella head?

  4. #4
    No, il codice che ho postato esegue il ricaricamento del div, quindi deve essere seguito periodicamente in base alla frequenza con cui vuoi che il div venga ricaricato. Se lo metti nell'head verrà eseguito una volta e poi basta, per eseguirlo periodicamente devi usare setInterval() facendo qualcosa del tipo

    codice:
    setInterval(function() {
        $('#id_div').load('url', parametri, function() {
            alert('Contenuto caricato');
        });
    }, 5000);
    dove 5000 sta per 5 secondi!
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

  5. #5
    grazie mille per la tua disponibilità, ma non ho capito due cose: la prima è dove devo mettere questo codice, la seconda sono i parametri che devo passare alla funzione, la url ecc..

  6. #6
    La documentazione di jQuery è molto esauriente in merito: http://api.jquery.com/load/

    codice:
    url: A string containing the URL to which the request is sent.
    
    data: A map or string that is sent to the server with the request.
    
    complete(responseText, textStatus, XMLHttpRequest): A callback function that is executed when the request completes.
    In pratica URL è l'indirizzo dove ci sono i dati che devi caricare nel div, data sono parametri get se vuoi passargli all'url (tipo uno script php che fa varie cose a seconda dei parametri) e complete è il callback che viene eseguito quando il load è stato eseguito.

    Il codice devi metterlo nell'head, sì. Se hai ulteriori dubbi dimmi pure.
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

  7. #7
    Non ho bisogno di includere nessun file .js?

  8. #8
    Chairamente jQuery, oltre a quello no.
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

  9. #9
    Sei stato fin troppo gentile.. Peró ho il difetto che se non capisco a fondo la cose non mi do pace non so cosa mettere nei due parametri, perchè tutto sommato vorrei fare un semplice refresh del "div", quindi mi trovo un po' spiazzato

  10. #10
    Qual è il contenuto che devi mettere nel div?
    Visita il mio blog e canale YouTube dedicati a programmazione web e sicurezza informatica.

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.