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

    [Jquery-Ajax] Domanda teorica su .load()

    Ciao a tutti

    solitamente utilizzo XHTML e PHP, ma è la prima volta che utilizzo ajax e sono una novellina anche con Jquery.

    Quindi scusate se faccio tante domande, magari assolutamente ovvie per voi...!

    Volevo sapere quando uno fa una chiamata ajax con il metodo .load()

    esattamente cosa accade?

    Mi spiego meglio con un esempio:
    il comando include 'pagina2.php' in PHP serve per inserire parti di codice da un altro file.
    Tutte le variabili presenti nella prima pagina possono essere utilizzate anche in pagina2.php, non serve ridichiararle o altro...

    [list=1][*]Cosa accade con una chiamata ajax? [*]Le variabili vanno ridichiarate?[*]Gli script vanno reinseriti sia nella prima pagina o anche in quella caricata successivamente?
    [*]Perché non serve l'evento $(document).ready se si inseriscono degli script nella pagina caricata successivamente?[*]Se si volesse sfruttare l'evento .submit(), o altri eventi, sia per la pagina di origine sia per la pagina caricata successivamente come si dovrebbe fare?[*]Io ho utilizzato questo codice per caricare la pagina:
    codice:
    function carica(id_div, nome_pagina,dati)
               {$(id_div).load(nome_pagina,dati);}
    Era meglio utilizzare altri metodi come .get(), .post() o $.ajax? Magari avrei evitato tanti problemi e questa marea di domande?[/list=1]

    GRAZIE DI TUTTO IN ANTICIPO!

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    dalle domande eterogenee da te poste suppongo tu abbia un problema su eventi relativi ad elementi caricati dopo la chiamata ajax, o sbaglio?

    riesci a fare nello specifico un esempio di cosa non funziona nella tua pagina?

  3. #3
    Il problema è più di uno...

    alcuni lì ho risolti... anche se non li ho capiti...
    per esempio ho spostato uno script nella pagina caricata con ajax perché si riferiva ad elementi al suo interno e fin qui posso capire... ma non ho capito mi segnava errore il fatto di averlo messo all'interno di $(document).ready ???Probabilmente per un esperto è una cosa del tutto ovvia...

    Adesso mi da problema con la validazione dei campi, ah giusto non ho scritto che si tratta di un modulo diviso in varie parti, di cui non tutte vanno compilate.

    Pensavo di aver risolto il problema della "comparsa-scomparsa" delle varie parti del modulo con .load() appunto...
    Ma ora non riesco a riadattare la validazione! Che prima partiva all'evento submit...
    Ora quando si preme sul bottone vengono validati solamente i campi della prima pagina e non di quelle caricate con ajax...

    e non riesco a capire dove sbaglio...

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da sea_green
    Ora quando si preme sul bottone vengono validati solamente i campi della prima pagina e non di quelle caricate con ajax...
    Originariamente inviato da me
    dalle domande eterogenee da te poste suppongo tu abbia un problema su eventi relativi ad elementi caricati dopo la chiamata ajax, o sbaglio?
    come supposto
    il problema è che tu hai agganciato degli eventi usando dei selettori che dopo la chiamata ajax non sono automaticamente aggiornati oppure hai collegato gli eventi usando il metodo bind()

    se riesci a ricreare un test minimo con un codice di esempio che non funziona ti si può dare un'indicazione precisa altrimenti riceverai solo indicazioni teoriche

  5. #5
    Il validatore prima era così:

    codice:
        $(document).ready(function(){
    
    $("form").submit(function() {alert("Validato");
    
    //VARIABILI DI CONTROLLO
    var validato = 0
    var controllo = 0
    
    //FUNZIONI
    function vero()   {validato++;controllo++;}
    function falso()  {controllo++;}
    function rimuovi(elemento)
         {$(elemento).remove('.error');}
    function inserisci_mess(elemento, messaggio)
         {$(elemento).after('<div class="error">' + messaggio + '</div>');}
         
    //     **********                    **********
    //     ***  VALIDAZIONE PARTE OBBLIGATORIA  ***
    //     **********                    **********
    
    //VALIDAZIONE TITOLO
        if($("#Titolo").val() != '')
        { rimuovi('#Titolo + div.error');
          vero();}
        else
        { rimuovi('#Titolo + div.error');
          inserisci_mess('#Titolo', 'Inserisci il titolo');
          falso();}
    
    return  validato==controllo
       });
      });
    e poi va avanti a validare gli altri campi...
    (ho fatto un copia incolla quindi quindi le parentesi potrebbero non essere giuste, nello script le ho controllate!!!)

    é un validatore che ho fatto io, quindi non credo sia il massimo però prima di utilizzare ajax funzionava!

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    puoi postare un ESEMPIO FUNZIONANTE di tutta la pagina in modo che si possa testare? e puoi dirci cosa ti aspetti che succeda?

    "prima di usare ajax funzionava" non ci può aiutare in nessun modo a capire quale sia il problema, al momento non sappiamo nemmeno se l'interprete js ti dà degli errori e cosa carichi via ajax.

  7. #7
    ti ho inviato il link nei messaggi privati!

  8. #8
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da sea_green
    ti ho inviato il link nei messaggi privati!
    spiacente ma i link vanno postati nelle discussioni
    Vuoi aiutare la riforestazione responsabile?

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

  9. #9
    Non l'ho postato nella discussione perché poi devo sistemare, la parte di "ricezione dei dati"
    e se tutti ci cliccano mi si riempie il database...

    se io la inserisco adesso dopo non posso eliminarlo dalla discussione!

  10. #10
    Ho fatto una copia di tutto in un'altra cartella

    il link è questo

    http://www.rspectroscopy.unipr.it/tr...risci_dati.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.