Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: Javascript + Ajax

  1. #1

    Javascript + Ajax

    Buongiorno!!
    Avrei un problema da porvi...
    ...ho la mia pagina formata da due select in cui si ha la possibilità di scegliere il mese e l'anno e poi ho un'immagine dell'Italia con alcuni nomi di località cliccabili, che sono collegati ad uno script ajax...in pratica vorrei che l'utente scelga il mese e l'anno e poi cliccando su una località il mese e l'anno mi vengano passati al mio script.
    Ho provato ad inserire nello script
    var m = document.getElementById('mese')
    var a = document.getElementById('anno')
    ma nella console degli errori del browser mi dice che questi valori sono null...
    esiste una soluzione al problema??
    Grazie in anticipo!!
    Ciaoo

  2. #2
    Codice PHP:
    var document.getElementById('mese').selectedIndex 

  3. #3
    Grazie per la risposta...
    ...ho fatto come mi dicevi, ma se stampo dal file php i valori delle variabili in
    mese = document.getElementById('Mese').selectedIndex;
    anno = document.getElementById('Anno').selectedIndex;
    ottengo come valore undefined....

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    2,008
    var m=document.getElementById('mese').options[document.getElementById('mese').selectedIndex].value;

    non sono un esperto ma e capitato anche a me e ho risolto cosi

  5. #5
    Grazie anche a te per la risposta...
    ...purtroppo però il risultato è lo stesso...
    ...io posto un po di codice, magari potrebbe essere d'aiuto....
    <SCRIPT
    var mese = document.getElementById('Mese').selectedIndex;
    var anno = document.getElementById('Anno').selectedIndex;
    oppure
    var mese=document.getElementById('Mese').options[document.getElementById('Mese').selectedIndex].value;
    var anno=document.getElementById('Anno').options[document.getElementById('Anno').selectedIndex].value;

    function GetXmlHttpObject(){
    if (window.XMLHttpRequest){
    return new createXmlHttpRequest();
    }
    if (window.ActiveXObject){
    return new ActiveXObject("Microsoft.XMLHTTP");
    }
    return null;
    }

    function createXmlHttpRequest(){
    var xmlhttp = null;
    xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = stateChanged;
    return xmlhttp;
    }

    function stateChanged(){
    if (xmlhttp.readyState==4){
    var resp = xmlhttp.responseText;
    bil = window.open('Bilanciamento','width=400','height=40 0');
    bil.document.write(resp);
    }
    }

    function bilanciaTarvisio(){
    xmlhttp=GetXmlHttpObject();
    if (xmlhttp==null){
    alert ("Browser does not support HTTP Request");
    return;
    }
    var url="mostraBilanciamento.php";
    url=url+"?v=T";
    url=url+"&mese="+mese;
    url=url+"&anno="+anno;
    url=url+"&sid="+Math.random();
    xmlhttp.onreadystatechange=stateChanged;
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
    }

    function bilanciaGries(){
    xmlhttp=GetXmlHttpObject();
    if (xmlhttp==null){
    alert ("Browser does not support HTTP Request");
    return;
    }
    var url="mostraBilanciamento.php";
    url=url+"?v=G";
    url=url+"&mese="+mese;
    url=url+"&anno="+anno;
    url=url+"&sid="+Math.random();
    xmlhttp.onreadystatechange=stateChanged;
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
    }
    </script>

    poi nell'html ho questo...
    <input type='image' id='tarvisio' name='tarvisio' src='files/italia_picture2.png' border='0' width='55' height='20' onClick='bilanciaTarvisio()>
    mentre non ho scritto niente di particolare nei tag select per indice e mese...

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova cosi:
    richiamo funzione:
    [img]files/italia_picture2.png[/img]
    Se il link viene generato dinamicamente Attenzione agli apici ' o " che forse dovrai \' o \" (backslash[sciare])

    funzione
    codice:
    function bilanciaTarvisio(mese,anno){
    xmlhttp=GetXmlHttpObject();
    if (xmlhttp==null){
    alert ("Browser does not support HTTP Request");
    return;
    }
    var url="mostraBilanciamento.php";
    url=url+"?v=T";
    url=url+"&mese="+mese;
    url=url+"&anno="+anno;
    url=url+"&sid="+Math.random();
    xmlhttp.onreadystatechange=stateChanged;
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
    }
    .....
    se non risolvi posta un link alla pagina demo.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Grazie per la risposta...
    ...ma anche adesso non funziona!!
    Cosa intendi per pagina demo...perche il sito è solo in locale, potrei postarti tutto il codice della pagina e il programmino php che gestisce (dovrebbe gestire) la richiesta ajax.

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da Randy Marsh
    Grazie per la risposta...
    ...ma anche adesso non funziona!!
    Prego.... comunque la frase lasci il tempo che trova, da errori?
    Cosa intendi per pagina demo...perche il sito è solo in locale, potrei postarti tutto il codice della pagina e il programmino php che gestisce (dovrebbe gestire) la richiesta ajax.
    Se non hai la possibilità di mettere una pagina pubblica come non detto
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Se guardo nella console degli errori mi dice che Mese is not defined.
    L'unico mio dubbio sono gli '' o le ""...ovvero io lancio la funzione bilanciaTarvisio da un tag html che però viene generato con php...

    onClick='bilanciaTarvisio(document.getElementById( Mese).options[document.getElementById(Mese).selectedIndex].value, document.getElementById(Anno).options[document.getElementById(Anno).selectedIndex].value);'>

    se io metto 'Mese' oppure "Mese" quando apro la console degli errori e clicco sull'errore mi si apre la pagina sorgente in cui la parte tra apici è in rosso...

    Non riesco a capire perche non mi prende il dato, io ho la select nella stessa pagina con l'immagine, quindi quando voglio passare il valore della select il dato dovrebbe essere noto!!

    Tra poco penso che inizierò a piangere...magari mi compatisce ed inizia a funzionare!!!

  10. #10
    aggiungo che se nella funzione bilanciaTarvisio() come parametri invece di document.getElementById(Mese).options[document.getElementById(Mese).selectedIndex].value, document.getElementById(Anno).options[document.getElementById(Anno).selectedIndex].value
    gli passo due costanti come 10,2008 i valori vengono passati.

    Ma devo mica mettere qualche event listener nella select??

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.