[LatinaLUG] jquey e ajax

Jusi Pomenti jusipom@gmail.com
Gio 11 Feb 2016 14:20:12 CET


come è possibile che non richiama lo script?
Ciao

Il 10/02/2016 14:00, Mirko ha scritto:
> Ciao Jusi,
> non ho testato il codice che ci hai girato, però a primo impatto ti 
> dico subito che questa operazione:
> $('select').each(function(){
>         $(this).change(function() {
>
> puoi riassumerla in $('select').change(function(){}); o meglio ancora 
> $('body').on('change','select',function(){});
> Un'altra cosa che ho notato è che nell'attr ID piazzi solo un valore 
> numerico, prova ad aggiungere un prefisso tipo ilmioid_0.
>
> prova intanto a modificare queste cose, e piazza un console.log qua e 
> la per capire dove si blocca il tuo script
>
> Ciao!
> Mirko
>
> Il giorno 10 febbraio 2016 13:35, Jusi Pomenti <jusipom@gmail.com 
> <mailto:jusipom@gmail.com>> ha scritto:
>
>     ciao a tutti,
>     è      la prima volta  che affronto un problema del genere e ho
>     poca familiarità con jquery e ajax.Non vi invio tutto il codice
>     che,oltre  ad essere diviso  in file,è anche piuttosto lungo e,in
>     poche parole,funziona  cosi':
>     Ho 4 select con id da 0 a 3. Quando l'utente cambia il valore
>     della select 0,vengono impostati alcuni parametri per operare
>     sulla select 1 e con questi si esegue una richiesta AJAX con il
>     metodo GET che popola la select con id 1.
>     Stesso discorso quando cambia l'opzione nella select
>     2;ovviamente,in questo caso,viene popolata la select 3 La mia
>     impressione è che non chiami lo script. Questa è la pagina iniziale:
>     -------------------------------------------------------------------
>     <!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; />
>     <title>jquery e ajax</title>
>     <script src="jquery-1.8-0.min.js" language="javascript"
>     type="text/javascript"></script>
>     <script language="javascript" type="text/javascript">
>
>     $(document).ready(function() {
>
>         // verifico  quale select ha cambiato  valore e setto,di
>     conseguenza,la select da aggiornare
>         $('select').each(function(){
>             $(this).change(function() {
>                  var list_select_id=$(this).attr('id');    // ID
>     select che ha cambiato valore
>                  var selectvalue = $(this).val(); // valore selezionato
>                  var par; // parametri
>                  var initial_target_html; // prima opzione
>                  switch (list_select_id)
>                  {
>                      case 0:
>                         list_target_id='#1';
>                         initial_target_html = '<option
>     value="0">Seleziona una categoria</option>';
>                         par='id_cat='+seletvalue;
>                         break;
>                     case 2:
>                         list_target_id='#3';
>                         initial_target_html = "<option
>     value='0'>Seleziona un'area/option>";
>                         par='id_area' + seletvalue;
>                         break;
>                  }
>
>      alert(list_target+" - "+par);
>                  $(list_target_id).html(initial_target_html); //
>     inserisce la prima opzione nel secondoo menù
>
>                  $('#'+list_select_id).change(function(e) {
>                      // visuualizza un messagio in attesa di caricaree
>     u  dati
>                      $(list_target_id).html('<option value="0">Sto
>     caricando</option>');
>                      //if-else
>                      if (selectvalue == "") {
>                          // Se non è selezionata um'opzione nel primo
>     menù,neò secondo viene visualizzata la prima opzione
>      $(list_target_id).html(initial_target_html);
>                      } else {
>                          // richiest AJAX con GET
>                          $.ajax({url: 'ajax-scat.php?'+ par,
>                              success: function(output) {
>                                  // visualizza le opzioni in caso di
>     successo
>                                  $(list_target_id).html(output);
>                              },
>                              error: function (xhr, ajaxOptions,
>     thrownError) {
>                                  // visualizza eventuali errori
>                                  alert(xhr.status + " "+ thrownError);
>                              }
>                          }); // chiudo $.ajax
>                      } //if-else
>                  }); // chiudo $(list_select_id).change(
>
>             });// chiudo $(this).change(
>         });// chiudo $('select').each(
>
>     }); //chiudo ready
>
>     </script>
>     </head>
>     <body>
>     <div style='position:absolute; top:150px; left:100px; width:900px;
>     height:200px'>
>     <?php
>       include ("config_db.php");  // funzioni per la connessione al db
>       include ("php_html.php");   // scrive codice html tramite php
>       $db=connect();
>     $m_cat=crea_menu($db,"categorie","cat","index.php",0,0,"cat");
>     $m_area=crea_menu($db,"area","area","index.php",0,2,"area");
>       mysql_close($db);
>       $m_scat=crea_menu_nill(1,"scat");
>       $m_uff=crea_menu_nill(3,"uff");
>       $s="<form  name='ins' method='post' action=''>";
>       $s.="<table width='100%'>";
>       $s.="<tr height=50>";
>       $s.=ins_menu("Categoria :","5%",1,$m_cat,"30%",1,"top","","","",0);
>       $s.=ins_menu("Sottocategoria
>     :","5%",1,$m_scat,"30%",1,"top","","","",0);
>       $s.="</tr>";
>       $s.="<tr height=50>";
>       $s.=ins_menu("Area :","5%",1,$m_area,"30%",1,"top","","","",0);
>       $s.=ins_menu("Ufficio :","5%",1,$m_uff,"30%",1,"top","","","",0);
>
>       $s.="</tr></table>";
>
>       $s.=ins_submit();
>       $s.="</form>";
>       echo $s;
>
>     ?>
>     </div>
>     </body>
>     </html>
>     ----------------------------------------------
>     dove  sbaglio?
>     Ciao e grazie
>
>     _______________________________________________
>     http://www.llg.it
>     latina mailing list
>     latina@lists.linux.it <mailto:latina@lists.linux.it>
>     http://lists.linux.it/listinfo/latina
>
>
>
>
> _______________________________________________
> http://www.llg.it
> latina mailing list
> latina@lists.linux.it
> http://lists.linux.it/listinfo/latina

-- 
-------------------------------
Junior Silvestro Pomenti
Latina

Sito Web: www.jusipom.it
Email: jusipom(at)gmail.com
        info(at)jusipom.it
-------------------------------

-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.linux.it/pipermail/latina/attachments/20160211/a404af1f/attachment.html>


Maggiori informazioni sulla lista latina