Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di billy1
    Registrato dal
    Jun 2001
    Messaggi
    549

    problema intercettare un valore della SELECT (tendina) al click di un campo

    ciao,

    ho un problema con il codice javascript.

    ho un menu a tendina che contiene dei valori, all'onChange della tendina cambia, in javascript, l'immagine nella pagina.

    fin qui tutto ok.

    Il problema e' che io voglio poi che, cliccando sull'immagine corrente, si apra una pagina ASP, passando ad essa il valore del'option corrente della tendina selezionata.

    io, dove c'e' l'immagine, ho fatto come vedete nel codice piu' sotto :

    onClick="return immagine_onclick(this,this.form);"

    ecco, appunto, nella funzione javascript immagine_onclick, non riesco ad intercettare il valore dell'option della tendina correntemente selezionata...

    ecco il codice, sia della funzione javascript a cui passo l'intero FORM, sia del codice html

    codice:
    <script LANGUAGE="javascript">
    <!--
    // inizio funzione a cui passo il form, e vorrei trovare il valore dell'option della tendina selezionata
    function immagine_onclick(xxxx,theForm) {
    var nomescat = "";
    nomescat=theForm.sottocategoria.options[theForm.sottocategoria.selectedIndex].value;
    // MI DA ERRORE QUI : DICE sottocategoria is null or not an object !!!! 
    }
    // fine immagine_onclick
    
    
    
    // questa invece e' la funzione che mi fa cambiare l'immagine all' onchange della tendina
    // pero' qui nessun apparente problema
    
    function cambia_immagine(fobj,frmobj) {
    ArrStr=fobj.options[fobj.selectedIndex].value.split("|");
    
    if (frmobj.img_cameretta) 
    	{
    	if (ArrStr[1] != '')
    	{
    	frmobj.img_cameretta.src = ArrStr[1];
    	}
    	else
    	{
    	var imgStandardNido = "/immages/cameretta_non_presente.jpg";
    	frmobj.img_cameretta.src = imgStandardNido;
    	}
    	frmobj.img_cameretta.alt = "Cliccate sull'immagine per ingrandirla";
    	frmobj.Invia.value='Clicca e vedi tutti i prodotti della cameretta >';
    	frmobj.Invia.style.color='#f60';
    	}	
    	
    }  // fine cambia_immagine
    //-->
    </script>
    
    <form method="get" action="elenco.asp" id="formcamerette-224" name="formcamerette-224">   
    <td align=center> 
    <table border=0 width=100%>         
    <tr><td nowrap>
    <p align="center">Scegli: 
    <select name="sottocategoria" id="sottocategoria" onChange="return cambia_immagine(this,this.form);">
         
          <option value="giallina mib|/pimages/400giallina mib_scat.jpg">giallina</option>
          
          <option value="rosina mib|/pimages/401rosina mib_scat.jpg">rosina</option>
          
         </select></p>
        </td></tr>
        <tr><td>
        <p align=center>
    
        [img]/pimages/400giallina mib_scat.jpg[/img]</p>
        </tr></td>
        </table>
        
        </td>
       </tr>
       <tr>
        <td align="center" width="100%" height="30" valign="top">
        <input type="submit" value="Clicca e vedi tutti i prodotti della cameretta" name="Invia" id="Invia" class="invia_camerette"></td>
       </form>
    Il fumo fa male a te e agli altri.
    Rispettate chi non vuole respirare il fumo passivo.

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    l'evento onclick è sull'immagine e non su un elemento del form, quindi non puoi usare this.form
    prova sostituirlo con
    document.forms['formcamerette-224']

  3. #3
    Utente di HTML.it L'avatar di billy1
    Registrato dal
    Jun 2001
    Messaggi
    549

    ok

    sei un grande grazie funziona
    Il fumo fa male a te e agli altri.
    Rispettate chi non vuole respirare il fumo passivo.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.