Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    28

    variabile ajax che non passa

    Salve a tutti sto imparando ajax quindi sono un neofita di questa linguaggio.Sto facendo uno script per esercitarmi ma trovo difficoltà a passare la variabile ajax nella pagina php che serve per la scelta di una select con valori dipendenti dalla select della pagina iniziale.Ecco il codice e scusate se non sono stato chiaro:
    Codice PHP:
    <Script>
       var 
    myRequest null;

    function 
    CreateXmlHttpReq(handler) {
      var 
    xmlhttp null;
      try {
        
    xmlhttp = new XMLHttpRequest();
      } catch(
    e) {
        try {
            
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(
    e) {
            
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
      }
      
    xmlhttp.onreadystatechange handler;
      return 
    xmlhttp;
    }

    function 
    myHandler() {
        if (
    myRequest.readyState == && myRequest.status == 200) {
           var 
    elemento document.getElementById("durata");
            
    elemento.innerHTML myRequest.responseText;
        }
    }
    function 
    scelta('durata'){
         var 
    elem document.getElementById("diff");
         
    alert(elem);
        
    myRequest CreateXmlHttpReq(myHandler);
        
    myRequest.open("GET","getDurata.php?dur="+escape("durata"));
        
    myRequest.send(null);
        }
    </Script>
    <form name="form">
    <div id="div_durata">
            <table>
             <tr><td>Difficoltà:</td><td>
             <select id="diff">
             <option value="0">Scegli</option>
             <option value="1" onclick="scelta('facile');">Facile</option>
             <option value="2" onclick="scelta('media');">Media</option>
             <option value="3" onclick="scelta('difficile');">Difficile</option>
             </select>
             </td></tr><tr><td>Durata:</td>
             <td><select id="durata" name="durata">
             <option>Scegli<option>
             </select>
             </td></tr>
             </table>
             
        </div> 
    mentre questa è getDurata.php
    Codice PHP:
    <?php

    $scelta
    =$_GET['durata'];
    if(
    $scelta==1){
       echo 
    "<select><option>","1 ora </option>","option","2 ore </option></select>";
    }
    if(
    $scelta==2){
      echo 
    "<select><option>","5 ore </option>","option","6 ore </option></select>";
    }
    if(
    $scelta==3){
      echo 
    "<select><option>","9 ore </option>","option","10 ore </option></select>";
    }

    ?>

  2. #2
    Utente di HTML.it L'avatar di Pastore12
    Registrato dal
    Oct 2008
    Messaggi
    1,051
    Vorrei aiutarti.. ma odio le chiamate ajax
    Ti andrebbe ti provare jQuery... sono uno spammer gratuito per publicizzare questo framework javascript.. Il fatto è che fornisce delle comode funzioni come:
    - load
    - get
    - post
    per effettuare le chiamate ajax senza troppi casini. Ti consiglierei di darci un'occhiata. Se poi la cosa ti piace, il passaggio di parametri via get o post diventa banale... beh.. quasi... jQuery ha un buon numero di belle qualità, ma bisogna sbatterci un po' la testa per capirlo bene.. Però è tutto ben documentato!
    "Ethics are to me something private. Whenever you use it as an argument for why somebody_else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head"
    Linus Torvalds

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    28
    Vorrei pure farlo però il prof ci richiede quello che ho descritto sopra e per passare l'esame bisogna fare ajax.Grazie lo stesso spero che qualcuno possa rispondermi su ajax.Grazie anticipatamente.

  4. #4
    Utente di HTML.it L'avatar di Pastore12
    Registrato dal
    Oct 2008
    Messaggi
    1,051
    In tal caso potresti passare da qui
    "Ethics are to me something private. Whenever you use it as an argument for why somebody_else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head"
    Linus Torvalds

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    NON HO COLLAUDATO

    La chiamata GET sarà di questo tipo:
    objHTTP.open("GET", url, true);

    l'url è di questo tipo:
    var url = "pagina.aspx?" + parametri;


    parametri ha questa struttura:
    var parametri = "variabile1=" + encodeURIComponent(valore1)
    + "&" + "variabile2=" + encodeURIComponent(valore2);
    + "&" + "variabilen=" + encodeURIComponent(valoren);


    Pietro

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.