Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Split su checkbox

  1. #1

    Split su checkbox

    Buonasera a tutti,
    ho un problema...
    Ho n checkbox che vengono generati da un XML (sono circa 4 cmq...)
    In ogni checkbox ho dei valori composti in questa maniera :

    servizio|10,00|50

    Io devo recuperare solamente il 10,00 per far fare al sistema la somma automatica una volta spuntato o meno.

    Non capisco come fare a farlo.. Ho fatto alcune prove, ma non ottengo il risultato voluto.
    Questo l' ultimo codice che ho fatto :

    codice HTML:
    <br /><br />Importo Noleggio: <input type="text" name="importo" value="<?php echo $xml->Importo; ?>" onFocus="startCalc();" onBlur="stopCalc();" />Totale Accessori: <input type="text" name="totale" readonly onFocus="startCalc();" onBlur="stopCalc();"/></b>Totale Noleggio: <input type="text" name="myresult" readonly="readonly" /><input type="submit" id="invia" name="invia" value="PROSEGUI" /></form><script language="javascript">function calcolaTotale(c) {var one=0;one = <?php echo($xml->Importo);?> ;var allChecks = document.testform.elements[c.name];var tot = 0;for (var i = 0; i < allChecks.length; i++) {miastringa = new String(allChecks[i].value)miaarray = miastringa.split("|")document.write(miaarray[1]+"<br>");//tot += (allChecks[i].checked ? parseFloat(allChecks[i].value) : 0);}</script>
    Dove sbaglio?

    Devo solamente recuperare il valore al centro, passarlo all'altra funzione che si occupa solamente di fare in automatico la somma se checkato oppure no...

  2. #2
    sono riuscito ad ottenere l'array composto da tutti e 4 i checkbox.
    questo il codice:
    codice HTML:
    var allChecks = document.testform.elements[c.name];var tot = 0;for (var i = 0; i < allChecks.length; i++) {miastringa = new String(allChecks[i].value)miaarray = miastringa.split("|")document.write(miaarray[1]+"<br>");//document.write(miaarray+"<br>");
    //tot += (allChecks[i].checked ? parseFloat(prova[i].value) : 0);}
    Il risultato che ottengo con il document.write è il seguente :

    codice:
    21,00
    5,00
    10,00
    8,00
    Ora però devo far in modo che se è il primo valore il cliccato (21,00) sia aggiunto alla funzione di somma, se clicco anche il terzo aggiunge etc. Il codice completo :

    codice HTML:
    <script language="javascript">function calcolaTotale(c) {var one=0;one = <?php echo($xml->Importo);?> ;var allChecks = document.testform.elements[c.name];var tot = 0;for (var i = 0; i < allChecks.length; i++) {miastringa = new String(allChecks[i].value)miaarray = miastringa.split("|")document.write(miaarray[1]+"<br>");//document.write(miaarray+"<br>");//tot += (allChecks[i].checked ? parseFloat(allChecks[i].value) : 0);}document.testform.totale.value = tot;document.testform.myresult.value = ((one * 1) + (tot * 1));}</script>
    non riesco...

  3. #3
    per trovare la variabile ho provato ad usare :

    codice HTML:
    tot += (allChecks[i].checked ? parseFloat(miaarray[1][i].value) : 0);
    Ma mi restituisce NaN e non un valore...

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.