webForumDet fria alternativet

Hämta värde från radio buttons till parameter i tag?

JavaScript

4 svar · 678 visningar · startad av sne1

Medlem sedan jan. 200363 inlägg
Frågan#1

Hur gör jag för att få ut det valda värdet från följande radio buttons...

<td><input type="radio" name="val" id="val1" value="a@doman.se">val1</td>
<td><input type="radio" name="val" id="val2" value="b@doman.se">val2</td>
<td><input type="radio" name="val" id="val3" value="c@doman.se">val3</td>

...och föra in det som "XXX" i parametern value, i följande tag...

<input type="hidden" name="recipient" value="XXX">

...som ju inte "skjuts" förrän formuläret skickas iväg?

TACKSAM för hjälpande svar, helst utan alltför knepiga script - om det går att undvika.

Medlem sedan feb. 20041 816 inlägg
#2

Varför vill du göra det? Det markerade värdet får du ju ut på serversidan genom request.getParameter("val"); på samma sätt som du får ut det genom request.getParameter("recipient"); om du nu väljer att använda ett skript som gör det du frågar efter. Jag ser inte riktigt vinsten men iaf, ett sånt scipt kan se ut typ såhär:

<td><input type="radio" name="val" id="val1" value="a@doman.se" onclick="setRecipient($('recipient'), this);">val1</td>
<td><input type="radio" name="val" id="val2" value="b@doman.se" onclick="setRecipient($('recipient'), this);">val2</td>
<td><input type="radio" name="val" id="val3" value="c@doman.se" onclick="setRecipient($('recipient'), this);">val3</td>

<input type="hidden" name="recipient" id="recipient" value="XXX">
<script type="text/javascript">
	function setRecipient(targetElement, sourceElement) {
		targetElement.value = sourceElement.value;
	}
	var $ = function(elementId) {
		return document.getElementById(elementId);
	}
</script>
Medlem sedan jan. 200363 inlägg
#3

Tjo dAEk!

TUSEN TACK för din hjälp - det funkar perfekt!
Jo, detta värde avgör redan på klientsidan till vilken mailadress post-mailet skickas - supersmutt!

Men du.
Hur funkar det, egentligen?
Jag menar - vilken parameter i input-taggen är det som "tar emot" värdet av attributet 'recipient'?
Är det 'id', som jag tror?
Och eventuellt befintligt värde på attributet 'value' ersätts med värdet av attributet 'recipient'?
Vad gör attributet 'name', egentligen?

Medlem sedan aug. 20039 340 inlägg
#4

Flyttas från HTML, XHTML & CSS

Medlem sedan feb. 20041 816 inlägg
#5

sne1 skrev:

Tjo dAEk!

TUSEN TACK för din hjälp - det funkar perfekt!
Jo, detta värde avgör redan på klientsidan till vilken mailadress post-mailet skickas - supersmutt!

Men du.
Hur funkar det, egentligen?
Jag menar - vilken parameter i input-taggen är det som "tar emot" värdet av attributet 'recipient'?
Är det 'id', som jag tror?
Och eventuellt befintligt värde på attributet 'value' ersätts med värdet av attributet 'recipient'?
Vad gör attributet 'name', egentligen?

Tjo, tjo. :)

Det fungerar som så att när en radiobutton blir klickad sätter den värdet för elementet med id "recipient", dock skulle id:t kunna vara något annat. Det som är intressant för servern som hanterar formuläret är elementens name-attribut i formuläret. Id:n skickas aldrig iväg.

Och egentligen är scriptet du frågade om ganska onödigt eftersom radiobuttons fungerar som så att man kan ha flera stycken av dem (med samma namn), men det är bara den som är iklickad/markerad/vald vars värde skickas till servern. Så istället för att ett gömt formulärelement som ändras beroende på vilken radiobutton användaren väljer skulle du kunna skita i scriptet och bara låta det formuläret vara. Det är bara det valda värdet som skickas ändå!

263 ms totalt · 4 externa anrop · v20260731065814-full.2d97a731
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)