Hej!
Nu har jag verkligen kört fast. Finns det någon snäll själ som kan visa i ett enkelt exempel hur denna kod kan se ut? (Har verkligen försökt hitta på nätet om hur man gör detta, men inte funnit nått bra)
Dropdownmeny(med värdena 1,2,3)
Dropdownmeny(med värdena 7,8,9)
Textfield: Här hamnar summan automatiskt. (Dynamiskt)
(Ingen submitknapp finns.)
HTML+Javascript. (Ska läggas på en Unix server)
Stort tack på förhand. :OO
JojoxxMedlem sedan juni 20004 308 inlägg Exempel:
<form>
<select name="a" onchange="this.form.summa.value=parseFloat(this[this.selectedIndex].text)+parseFloat(this.form.b[this.form.b.selectedIndex].text)">
<option>1</option><option>2</option><option>3</option>
</select>
<select name="b" onchange="this.form.summa.value=parseFloat(this[this.selectedIndex].text)+parseFloat(this.form.a[this.form.a.selectedIndex].text)">
<option>7</option><option>8</option><option>9</option>
</select>
<input type="text" name="summa" value="8">
</form>
Tack så hemkst mycket Jojoxx
Följdfråga, hur gör man om man vill ha någon text innan priserna i menyerna?
har testat med
<option value='79'>Mellan</option>
Men det funkar inte. (ger "NaN" istället för summan)
Peter SMedlem sedan dec. 20025 483 inlägg Substituera alla .text mot .value.
:)
Hej! :)
Testade det nu, men då får jag "NaN" hela tiden.
Såhär ser det ut nu:
<form>
<select name="a" onchange="this.form.summa.value=parseFloat(this[this.selectedIndex].value)+parseFloat(this.form.b[this.form.b.selectedIndex].value)">
<option value='79'>Some text</option>
<option>99</option><option>109</option><option>139</option> </select> <select name="b" onchange="this.form.summa.value=parseFloat(this[this.selectedIndex].value)+parseFloat(this.form.a[this.form.a.selectedIndex].value)"> <option>0</option><option>80</option><option>160</option><option>300</option><option>500</option>
</select> <input type="text" name="summa" value="">
</form>
JohnsenMedlem sedan juli 2000836 inlägg Du få vara konsekvent, antingen räknar man på text eller value.
<form>
<select name="a" onchange="this.form.summa.value=parseFloat(this[this.selectedIndex].value)+parseFloat(this.form.b[this.form.b.selectedIndex].value)">
<option value='79'>Some text</option>
<option value='99'>99</option>
<option value='109'>109</option>
<option value='139'>139</option>
</select>
<select name="b" onchange="this.form.summa.value=parseFloat(this[this.selectedIndex].value)+parseFloat(this.form.a[this.form.a.selectedIndex].value)">
<option value='0'>0</option>
<option value='80'>80</option>
<option value='160'>160</option>
<option value='300'>300</option>
<option value='500'>500</option>
</select>
<input type="text" name="summa" value="">
</form>
Peter SMedlem sedan dec. 20025 483 inlägg Jag antog att du hade tänkt använda dig av "value"-attributet i båda "select"-elementen.
För att komma åt värdet (value="") använder du .value och för att komma åt texten (...>Text<...) använder du .text.
:)
Nu funkar det!!!!!!!!! :) :) :)
Tack så hemskt mycket för hjälpen.