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

    Sostituzione Carattere tramite Javascript

    Ciao a tutti,
    premetto che sono totalmente ignorante in materia: (Ho iniziato ieri a lavorare con Javascript)

    Ho realizzato una serie di piccole funzioni che servono al caso quì sotto c'è il codice della mia pagina:

    Io ho bisogno di andare ad inserire nel campo
    materialetext il valore senza il valore successivo al #, mi spiego meglio:

    Mettiamo che io selezioni il valore 5.9#TRASPARENTE nel campo materialetext, voglio che venga visualizzato solo il valore 5.9

    Stesso di scorso, o meglio discorso contrario per quanto riguarda il campo materialehidden voglio che venga visualizzato il valore che segue il #

    Ad esempio se seleziono 5.9#TRASPARENTE nel campo materialehidden, voglio che venga visualizzato solo il valore TRASPARENTE

    Spero di essermi spiegato, potete aiutarmi?

    codice:
    <html>
    <head>
    <title>Adesivi</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    function calcola(){
    	var en=1;
    	var a=0;
    	var b=0;
    	var c=0;
    	var d=0;
    	var s,p;
    	var numero=document.form.materiale.value;
    
    	
    	x=document.form.materiale.value;
    	
    	if(x==-1) en=0;
    	else a=x;
    
    	x=document.form.formato.value;
    	
    	if(x==-1) en=0;
    	else b=x;
    	
    	x=document.form.finitura.value;
    	
    	if(x==-1) en=0;
    	else c=x;
    	
    	s=parseFloat(a)+parseFloat(b)+parseFloat(c);	
    	
    	x=document.form.quantita.value;
    	if(x==0) en=0;
    	
    	p=s*x;
    	
    	if(en==0) document.form.valore.value="";
    	else document.form.valore.value=p;
    }
    
    function cambioA(){
    	if((document.form.materiale.value)==-1) document.form.materialetext.value="";
    	else document.form.materialetext.value=(document.form.materiale.value);
    	calcola();
    }
    
    function cambioAA(){
    	if((document.form.materiale.value)==-1) document.form.materialehidden.value="";
    	else document.form.materialehidden.value=(document.form.materiale.value);
    	}
    	
    function cambioB(){
    	if((document.form.formato.value)==-1) document.form.formatotext.value="";
    	else document.form.formatotext.value=(document.form.formato.value);
    	calcola();
    }
    
    function cambioC(){
    	if((document.form.finitura.value)==-1) document.form.finituratext.value="";
    	else document.form.finituratext.value=(document.form.finitura.value);
    	calcola();
    }
    
    </script>
    </head>
    <body>
    
    <form action="save_adesivi.lasso" method="POST" name="form">
    	Materiale
    	<select name="materiale" onChange="cambioA();">
    		<option value="-1">--</option>
    		<option value="5.9#TRASPARENTE" onClick="cambioAA()">Trasparente</option>
    		<option value="0#ORO" onClick="cambioAA()">Oro</option>
    		<option value="3#ARGENTO" onClick="cambioAA()">Argento</option>
    		<option value="4#LUCIDO" onClick="cambioAA()">Lucido</option>
    		<option value="5#OPACO" onClick="cambioAA()">Opaco</option>
    		<option value="6#A SPECCHIO" onClick="cambioAA()">A specchio</option>
    	</select>
    	<input type="text" name="materialetext">
    	<input type="text" name="materialehidden">
    	
    
    
    	Formato
    	<select name="formato" onChange="cambioB();">
    		<option value="-1">--</option>
    		<option value="1.0#Biglietto da visita">Biglietto da visita</option>
    		<option value="0.9#Volantino A6">Volantino A6</option>
    		<option value="3#Volantino A5">Volantino A5</option>
    		<option value="4_Volantino A4">Volantino A4</option>
    		<option value="5_">Locandina</option>
    		<option value="6_50x70">50x70</option>
    		<option value="7_">50x100</option>
    		<option value="8">Pieghevole 3Ante</option>
    		<option value="9">Pieghevole 4Ante</option>
    		<option value="10">10x21 3Ante</option>
    		<option value="11">Quartino</option>
    	</select>
    	<input type="text" name="formatotext">
    	<input type="text" name="formatohidden">
    	
    
    
    	Finitura
    	<select name="finitura" onChange="cambioC();">
    		<option value="-1">--</option>
    		<option value="1.0" onClick="">Plastificato</option>
    		<option value="2">Fustellato</option>
    		<option value="3">Taglio a misura</option>
    		<option value="4">Taglio a mezzofoglio</option>
    	</select>
    	<input type="text" name="finituratext">
    	<input type="text" name="finiturahidden">
    	
    
    	
    
    	Quantit&aacute;
    	<input type="text" name="quantita" onChange="calcola();">
    	
    
    
    
    	Risultato
    	<input type="text" name="valore" >
    	<input type="button" value="calcola" name="Calcola" onClick="calcola();">
    
    
    
    
    	<input type="submit" name="-Token.Action" value="Invia">
    </form>
    </body>
    </html>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non so se ho interpretato correttamente le tue indicazioni ho corretto e semplificato lo script: dalle modifiche cerca di capire gli errori commessi

    codice:
    <html>
    <head>
    <title>Adesivi</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    function f_calcola(){
    	var f = document.MYform;
    	var en=1;
    	var a=0;
    	var b=0;
    	var c=0;
    	var d=0;
    	var s,p;
    	var numero=f.materiale.value;
    
    	
    	x=f.materiale.value;
    	
    	if(x==-1) en=0;
    	else a=x;
    
    	x=f.formato.value;
    	
    	if(x==-1) en=0;
    	else b=x;
    	
    	x=f.finitura.value;
    	
    	if(x==-1) en=0;
    	else c=x;
    	
     	s=parseFloat(a)+parseFloat(b)+parseFloat(c);	
    	
    	x=f.quantita.value;
    	if(x==0) en=0;
    	
    	p=s*x;
    	
    	if(en==0) f.valore.value="";
    	else f.valore.value=p;
    }
    
    function cambioA(){
    	var f = document.MYform;
    	var v = f.materiale.options[f.materiale.selectedIndex].value;
    	var t = f.materiale.options[f.materiale.selectedIndex].text;
    	if(v==-1) {
    		document.MYform.materialetext.value="";
    		document.MYform.materialehidden.value="";
    	} else {
    		document.MYform.materialetext.value=v;
    		document.MYform.materialehidden.value=t;
    	}
    	f_calcola();
    }
    
    function cambioB(){
    	var f = document.MYform;
    	var v = f.formato.options[f.formato.selectedIndex].value;
    	var t = f.formato.options[f.formato.selectedIndex].text;
    	if(v==-1) {
    		document.MYform.formatotext.value="";
    		document.MYform.formatohidden.value="";
    	} else {
    		document.MYform.formatotext.value=v;
    		document.MYform.formatohidden.value=t;
    	}
    	f_calcola();
    }
    
    function cambioC(){
    	var f = document.MYform;
    	var v = f.finitura.options[f.finitura.selectedIndex].value;
    	var t = f.finitura.options[f.finitura.selectedIndex].text;
    	if(v==-1) {
    		document.MYform.finituratext.value="";
    		document.MYform.finiturahidden.value="";
    	} else {
    		document.MYform.finituratext.value=v;
    		document.MYform.finiturahidden.value=t;
    	}
    	f_calcola();
    }
    
    </script>
    </head>
    <body>
    
    <form action="save_adesivi.lasso" method="POST" name="MYform">
    	Materiale
    	<select name="materiale" onChange="cambioA();">
    		<option value="-1">--</option>
    		<option value="5.9">Trasparente</option>
    		<option value="0">Oro</option>
    		<option value="3">Argento</option>
    		<option value="4">Lucido</option>
    		<option value="5">Opaco</option>
    		<option value="6">A specchio</option>
    	</select>
    	<input type="text" name="materialetext">
    	<input type="text" name="materialehidden">
    	
    
    
    	Formato
    	<select name="formato" onChange="cambioB();">
    		<option value="-1">--</option>
    		<option value="1.0">Biglietto da visita</option>
    		<option value="0.9">Volantino A6</option>
    		<option value="3">Volantino A5</option>
    		<option value="4">Volantino A4</option>
    		<option value="5">Locandina</option>
    		<option value="6">50x70</option>
    		<option value="7">50x100</option>
    		<option value="8">Pieghevole 3Ante</option>
    		<option value="9">Pieghevole 4Ante</option>
    		<option value="10">10x21 3Ante</option>
    		<option value="11">Quartino</option>
    	</select>
    	<input type="text" name="formatotext">
    	<input type="text" name="formatohidden">
    	
    
    
    	Finitura
    	<select name="finitura" onChange="cambioC();">
    		<option value="-1">--</option>
    		<option value="1.0" onClick="">Plastificato</option>
    		<option value="2">Fustellato</option>
    		<option value="3">Taglio a misura</option>
    		<option value="4">Taglio a mezzofoglio</option>
    	</select>
    	<input type="text" name="finituratext">
    	<input type="text" name="finiturahidden">
    	
    
    	
    
    	Quantitá
    	<input type="text" name="quantita" onChange="f_calcola();">
    	
    
    
    
    	Risultato
    	<input type="text" name="valore" >
    	<input type="button" value="calcola" name="Calcola" onClick="f_calcola();">
    
    
    
    
    	<input type="submit" name="-Token.Action" value="Invia">
    </form>
    </body>
    </html>
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Così è perfetto, l'unica cosa è che ora non mi funziona più il calcola? Come mai?

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da webpeppo
    Così è perfetto, l'unica cosa è che ora non mi funziona più il calcola? Come mai?
    Hai copiato l'intera pagina? ho cambiato diverse cose ovunque...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    si scusami hai ragione, errore mio.

    Grazie mille per l'aiuto.

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.