|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Dec 2007
Città: Torino
Messaggi: 1688
|
[Javascript] Piccola modifica a script, mi aiutate?
Ciao a tutti,
vi spiego: io per ora ho dei radio buttons organizzati così: Codice:
<input type="radio" name="AAA" value="100" onclick='check_value()' /> <input type="radio" name="AAA" value="200" onclick='check_value()' /> <input type="radio" name="BBB" value="300" onclick='check_value()' /> <input type="radio" name="BBB" value="400" onclick='check_value()' /> Codice:
<script language="JavaScript" type="text/javascript"> function check_value() { var total = 0; var controls = document.getElementsByTagName('input'); for (var i = 0; i < controls.length; i++) { if ((controls[i].type === 'radio' || controls[i].type === 'checkbox') && controls[i].checked) total = total + parseFloat(controls[i].value); } document.getElementById("totale").innerHTML = "€" + total.toString(); } </script> Il problema è che invece di value="100", ho bisogno di avere value="100##descrizione prodotto". Questo perché i radio sono in un form, e quando vado a fare submit ho bisogno della descrizione, non del numero! Mi sapete aiutare a modificare lo script in modo che mi faccia uno split e continui a funzionare, prendendo come valore numerico soltanto ciò che c'è prima del ##? Grazie ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2007
Città: Torino
Messaggi: 1688
|
Ho provato così:
Codice:
<script language="JavaScript" type="text/javascript"> function check_value() { var total = 0; var controls = document.getElementsByTagName('input'); for (var i = 0; i < controls.length; i++) { if ((controls[i].type === 'radio' || controls[i].type === 'checkbox') && controls[i].checked) var splittato = controls[i].value.split('@'); total = total + parseFloat(splittato[0]); } document.getElementById("totale").innerHTML = "€" + total.toString(); } </script> |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2775
|
Ma perché "splitti" sulla chiocciola (@) quando a te interessa splittare sui cancelletti (##)?
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Dec 2007
Città: Torino
Messaggi: 1688
|
Quote:
Ad ogni modo ho scoperto che, anche senza alcuna modifica, probabilmente grazie a come si comporta parseFloat, un 149@descrizione viene preso dalla funzione calcolatrice come 149 e stop ![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:45.