webForumDet fria alternativet

Superenkelt, men var gör jag fel!?

JavaScript

2 svar · 303 visningar · startad av tovelainen

Medlem sedan mars 2003137 inlägg
Frågan#1

Hej
ni skrattar säkert för det här är väl en funktion a la skolbok nr 1a.
Men jag får inte till det.

Jag vill att det i 3 dropdownmenus ska gå att välja dag, månad, år och att det vid submit kallas på en funktion som lägger ihop värdena i dropdownmenyerna till ett datum i stil med 12/24/2009.

Här är scriptet jag jobbar med (har tagit bort massor av dagar/år så att det inte blir för långt här)

<html>
<head>
<title>Test</title>
<script type="text/javascript">
<!--
var day1=document.subscribeForm.getElementsByName('dag').value;
var month1=document.subscribeForm.getElementsByName('mon').value;
var year1=document.subscribeForm.getElementsByName('ar').value;
var datum=(day1 + '/' + month1 + '/' + year1);

function date(){
alert (day1 + "/" + month1 + "/"+year1);
}
//-->
</script>
</head>
<body>
<form name="subscribeForm" action="*" onsubmit="(date(this))">
<select name="ar" id="ar">
	<option value="1900">1900</option>
	<option value="1901">1901</option>
	</select> 	
    <select name="mon" id="mon">
<option value="01">01</option>
<option value="02">02</option>
</select> 	
<select name="dag" id="dag">
<option value="01">01</option>
<option value="02">02</option>
</select>
    <br />
    <input type="submit" name="Skicka" id="Skicka" value="Submit" />
</form>
</body>
</html>

Tack på förhand

Medlem sedan juni 20004 308 inlägg
#2

Hej

En liten tankevurpa är att du försöker kolla värdet på listorna när dokumentet laddas och inte när du gör din submit.

<html>
<head>
<title>Test</title>
<script type="text/javascript">
<!--
function date(obj){
	var day1=obj.dag[obj.dag.selectedIndex].value;
	var month1=obj.mon[obj.mon.selectedIndex].value;
	var year1=obj.ar[obj.ar.selectedIndex].value;
	var datum=(day1 + '/' + month1 + '/' + year1);
	alert (day1 + "/" + month1 + "/"+year1);
}
//-->
</script>
</head>
<body>
<form name="subscribeForm" action="*" onsubmit="date(this)">
<select name="ar" id="ar">
<option value="1900">1900</option>
<option value="1901">1901</option>
</select>
<select name="mon" id="mon">
<option value="01">01</option>
<option value="02">02</option>
</select> 	
<select name="dag" id="dag">
<option value="01">01</option>
<option value="02">02</option>
</select>
    <br />
    <input type="submit" name="Skicka" id="Skicka" value="Submit" />
</form>
</body>
</html>
Medlem sedan mars 2003137 inlägg
#3

Jojoxx - du är dagens hjälte!!!
Tusen tack - det funkar.
Ja hur jag än gjorde så fick jag value="undefined" men det berodde väl på att värdet lästes av för tidigt.
:-)

264 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)