Newsgroup: it.comp.lang.javascript
Titolo: pagina operazioni

Salve a tutti,
speriamo che qualcuno di voi sia in grado di aiutarmi !
Dunque in una pagina html vorrei inserire
1 - diversi menù a tendina (che conterranno rispettivamente diversi valori)
2 - una casella di testo che visualizzi il totale di tutti i valori
selezionati.
Ogni menù a tendina avrà valore preimpostato a 0, ma una volta selezionato
un valore da uno dei menù a tendina (da 1 a 10 per esempio), quest'ultimo
dovrà essere aggiunto alla
somma totale in tempo reale senza ricaricare la pagina.
E' possibile realizzare una cosa del genere ? Oppure qualcuno di voi sa se
esiste già qualcosa ?
Io di javascript non ne so molto..
Qualcuno di voi è in gradi di aiutarmi ?
Grazie !!
Salutii

 Qualcuno di voi è in gradi di aiutarmi ?
Spero ti possa servire come spunto; cmq ti consiglierei di approfondire la
materia se hai intenzione di dedicartici :)
-- 
ZER0
~ The Tangent Universe collapsed 5934 days, 8 hours, 25 minutes and 58 seconds ago.
on air ~ "Iron Maiden - Fear Of The Dark"

 ha scritto nel messaggio
news:1d6xo0wc...@ID-171124.news.individual.net...

Zero.. ma..ma.. FANTASTICOOO !!
E' proprio quello che cercavo !! L'hai scritto tu ? Io in java sono ancora
in alto mare.. !!
Mi piace ASP.. e un po' qualcosina riesco a capirco.. ma il java.. ancora mi
è ostile..
Ora provo a fare questa cosuccia..
se ho problemi magari ti ridò un urlettino qui.. (giusto per capire al
massimo se sbaglio alcune eventuali modifiche !!)
Grazie davvero per la celerità della risposta !!
Salutoooni !!

 Grazie davvero per la celerità della risposta !!
De nada.
-- 
ZER0
~ The Tangent Universe collapsed 5937 days, 2 hours, 38 minutes and 4 seconds ago.

Stavo controllando lo script JAVASCRIPT che mi hai postato , mi sono
accorto che però non funziona con i numero con virgola tipo 0 + 1,22 = 1
Esiste un metodo per ovviare questo problema ?
Attendo fiducioso una tua risposta e ti ringrazio in anticipo !
Ciao !!
A1

 Esiste un metodo per ovviare questo problema ?
I decimali si separano con il punto (.), la virgola e' un operatore
riservato del linguaggio.
Se quel 1,22 viene da un campo utente, al limite fai un replace:
valore = valore.replace(",", ".");
-- 
l'importante e' non smettere mai di porsi domande

 accorto che però non funziona con i numero con virgola tipo 0 + 1,22 = 1
In primis, in js il separatore di decimali e' il punto non la virgola.
Quindi se vuoi scrivere uno virgola ventidue, devi fare: 1.22
Seconda di poi, dato che l'attributo value e' una stringa, io avevo fatto
un cast in intero per poter fare la somma (parseInt).
Se vuoi numeri in virgola mobile, devi usare parseFloat. Quindi, premesso
che i numeri in virgola mobile si scrivono con il punto (e non con la
virgola) devi sostituire nel codice che ti ho fornito questa riga:
iSum+=parseInt(els[i].options[els[i].selectedIndex].value,10);
con:
iSum+=parseFloat(els[i].options[els[i].selectedIndex].value);
-- 
ZER0://coder.gfxer.web-designer/
~ Come devo regolare la stampante laser per stordire?
(How do I set a laser printer to stun?)

 Grazie !!
De nada.
-- 
ZER0
~ The Tangent Universe collapsed 5951 days, 7 hours, 7 minutes and 27 seconds ago.
on air ~ "Muse - Time is Running Out"


Zero ciao.. !!
Ho potuto controllare lo scrip solamente ora.. e  ancora qualche problema
c'č !
Dunque  se seleziono due valori senza virgola tutto funziona correttamente,
ma se per esempio nel primo campo seleziono il valore 1.11 e nel secondo 1
il risultato che ottengo č 2.1100000000000003
Come mai ? Perchč non visualizza semplicemente 2.11 ? Quei valori anche se
millesimali su piů somme possono sfasarmi il risultato ? Solo che non
capisco perchč questo accada !
Per caso tu lo sai ?
Grazie !!

 > capisco perchè questo accada ! Per caso tu lo sai ?

Zero ho letto tutto.. ma purtropppo non sono arrivato a capire come poter
oviare al problema !
Come faccio scusami a troncare il risultato a due cifre dopo la virgola
all'interno di js ?
Pardon ma proprio non capisco...
Se riesci ad aiutarmi nella comprensione te ne sarei grato !
Altrimenti dovrò lasciar perdere perchè proprio non so dove mettere le mani
;)
Di nuovo grazie !

 Di nuovo grazie !
De nada.
-- 
ZER0
~ The Tangent Universe collapsed 5952 days, 7 hours, 17 minutes and 42 seconds ago.
on air ~ "Remy Zero - Save Me - Smallville theme"


Zero.. che dire sto proprio imbranato.. e sinceramente non riesco a capire
dove devo inserire quel comando.. mi trovo veramente in alto mare...
Nel tuo script
<script type="text/javascript">
function calcValue(){
var f=document.forms[0],
oText=f.txtResult,
els=f.cmbNumber,
iSum=0;
for (var i=0;i<els.length;i++)
iSum+=parseFloat(els[i].options[els[i].selectedIndex].value);
oText.value=iSum;
}
window.onload=function(){
var els=document.forms[0].cmbNumber;
for (var i=0;i<els.length;i++){
els[i].onchange=calcValue;
}
}
</script>
dove dovrei implementare il nuovo comando ?
qui ?
var f=document.forms[0],
oText=f.txtResult,
els=f.cmbNumber,
Scusa la cocciutaggine.. ma non lo faccio di proposito ;)
Ciaoo !

 oText.value=iSum;
Qui, ad esempio:
oText.value=iSum.toFixed(2);
-- 
ZER0
~ The Tangent Universe collapsed 5953 days, 5 hours, 17 minutes and 8 seconds ago.
on air ~ "Francesco Renga - Dove il Mondo non c'è Più"

>> alla reference.
Pensavo escludesse IE4, mentre vedo che esclude anche IE5.0. Un po' troppo
restrittivo, IMHO.
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 restrittivo, IMHO.
Tempo fa postai su questo NG il codice per aggiungere tale metodo nei
browser che non lo supportano.
-- 
ZER0
~ The Tangent Universe collapsed 5953 days, 6 hours, 47 minutes and 5 seconds ago.
on air ~ "Evanesence - Bring Me To Life"

 browser che non lo supportano.
http://makeashorterlink.com/?J32962D7A
Scopiazzo...grazie.


Grazie Zero !!
Il problema del browser è relativo in quanto userò questa pagina con Ie6 di
conseguenza il problema non si pone !;) (anche perchè girerà in locale sul
mio pc !!! ;)
Grazie di nuovo !