Autor Zpráva
studenthledapomoc
Profil
Ahoj, dělám si ve volným čase takové kravinky a nemohu si pomoct...

---
<select name="premie">
<option value="1"  onClick="prepocitej(this.form)">1x</option>
<option value="2"  onClick="prepocitej(this.form)">2x</option>
<option value="3"  onClick="prepocitej(this.form)">3x</option>
<option value="4"  onClick="prepocitej(this.form)">4x</option>
<option value="5"  onClick="prepocitej(this.form)">5x</option>
        </select> 
---
<input id="odpoveda" type="checkbox" name="odpoveda" value="Prida 100"  onClick="prepocitej(this.form)">
<input id="odpovedb" type="checkbox" name="odpovedb" value="Prida 200"  onClick="prepocitej(this.form)">
<input id="odpovedc" type="checkbox" name="odpovedc" value="Prida 300"  onClick="prepocitej(this.form)">
---
<input type="text" name="vyslednybody" value="100" disabled="disabled">

a teď ten problém..

Máme základ bodů což je 100 ... Premie body vynásobí ... Takže když nebude zaškrtlý checkbox a prémie bude třeba 5 ... tak je výsledek 500

  <script type="text/javascript">

  function prepocitej(thisForm)
  {
    a = thisForm.premie.value;
   
    n_a = parseFloat(a);
        
     if (thisForm.odpoveda.checked) 
      thisForm.vyslednybody.value = n_a * (100 + 100);   
     else if (thisForm.odpovedb.checked) 
      thisForm.vyslednybody.value = n_a *  (100 + 200);   
     else
     thisForm.vyslednybody.value = n_a * 100;   
    
    return;      
  }  
     
  </script> 
  

To by šlo... ale už mi nějak nejde... když budou zaškrtnutý 2 checkboxy a nebo když všechny 3 ... + odškrtávání ... nějak mi to blblo

Pokud to chápete, budu rád, když mi s tím pomůžete :-)

NAME potřebuju kvůli PHP :-) ... Výsledek by se měl poslat vcelku, jak vyjde též
Joker
Profil
studenthledapomoc:
Když budou zaškrtnuté dva checkboxy, udělá to to stejné, jako když je zaškrtnutý jen dřívější z nich.
Jestli se má přičítat každý, tak místo else if a else má být jen if.
Aby se ty další větve provedly vždy a ne jen když předchozí checkbox není zaškrtnutý.

Nesouvisející:
Je nějaký důvod si před konverzí kopírovat hodnotu pole do další zvláštní proměnné? A používat pro konverzi parseFloat, když jsou tam jen celá čísla?

<select name="premie">
<option value="1"  onClick="prepocitej(this.form)">1x</option>
<option value="2"  onClick="prepocitej(this.form)">2x</option>
<option value="3"  onClick="prepocitej(this.form)">3x</option>
<option value="4"  onClick="prepocitej(this.form)">4x</option>
<option value="5"  onClick="prepocitej(this.form)">5x</option>
        </select> 

Asi to má být spíš :
<select name="premie" onchange="prepocitej(this.form)">
<option value="1">1x</option>
<option value="2">2x</option>
<option value="3">3x</option>
<option value="4">4x</option>
<option value="5">5x</option>
</select> 
studenthledapomoc
Profil
Ahoj,
díky za radu s onchange ...

Přišel jsem na něco jiného, tak jsem to celé předělal :-)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: