Frågan 27 aug. 2003 14:49 #1 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
J Jojoxx Medlem sedan juni 2000 4 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)
P Peter S Medlem sedan dec. 2002 5 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>
Johnsen Medlem sedan juli 2000 836 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>
P Peter S Medlem sedan dec. 2002 5 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.