webForumDet fria alternativet

Skriva ut värdet på en radioknapp

JavaScript

4 svar · 147 visningar · startad av Web-Tor

Medlem sedan nov. 200013 890 inlägg
Frågan#1

Jag får inte detta att funka i NN 4 eller Opera 5. Det funkar i NN 6 och IE. :q

<html>
<head>
<title></title>
[red]<script type="text/javascript" language="JavaScript">
<!--

function check_form(){

	var check = document.formen.val;
	var val = "Inget val"

	for (var i=0; i<check.length; i++){
		if(check[i].checked){
			val=check[i].value;
		}
	}

	if(document.all){
		document.all("MeddelandeDiv").innerHTML=val;
	}else if(document.layers){
		document.layers["MeddelandeDiv"].document.write(val);
		document.layers["MeddelandeDiv"].document.close();
	}else if(document.getElementById){
		document.getElementById("MeddelandeDiv").innerHTML=val;
	}
	return false;

}

//-->
</script>

</head>
<body bgcolor="#FFFFFF">

<div id="MeddelandeDiv" style="position:absolute">Resutatet kommer att visas här</div>
<br>
<br>
<div id="FormDiv" style="position:absolute; top:200">
<form method="get" name="formen">
  Välj ett nummer:<br>
  <input type="radio" name="val" value="val1">
  Nummer 1<br>
  <input type="radio" name="val" value="val2">
  Nummer 2<br>
  <input type="radio" name="val" value="val3">
  Nummer 3<br>
  <br>
  <input type="submit" value="Skicka" OnClick="return check_form()">
</form>
</div>

</body>
</html>

Snälla! Hilfe!

------------------
/Tor
www.tor.nu

[Redigerat av Web-Tor den 27 sep 2001]

Medlem sedan juli 20011 304 inlägg
#2

Prova:

else if(document.layers){		
[b]document.layers["MeddelandeDiv"].document.open();[/b]
document.layers["MeddelandeDiv"].document.write(val);
document.layers["MeddelandeDiv"].document.close();

Det kanske hjälper...

------------------
The computer is mightier than the pen, the sword, and usually, the programmer.

[Redigerat av Jon den 27 sep 2001]

Medlem sedan nov. 200013 890 inlägg
#3

Ingen skillnad.
Inte ens om man struntar i att skriva ut det i layers utan använder alert (val) så funkar det i NN 4. :q

------------------
/Tor
www.tor.nu

Medlem sedan juli 20011 304 inlägg
#4

Hmmm... kan vara så att NS4 inte hittar formen i lagret.
Ska kolla upp imorrn...

:)

------------------
The computer is mightier than the pen, the sword, and usually, the programmer.

Medlem sedan nov. 200013 890 inlägg
#5

Jag gjort lite ändringar och nu funkar det i NN4/6 men inte i Opera.

Har vi nån Opera-expert eller? :)

<html>
<head>
<title></title>
[red]<script type="text/javascript" language="JavaScript">
<!--

function check_form(what){

	var check = what.val;
	var val = "Inget val"

	for (var i=0; i<check.length; i++){
		if(check[i].checked){
			val=check[i].value;
		}
	}

	if(document.all){
		document.all("MeddelandeDiv").innerHTML=val;
	}else if(document.layers){
		document.layers["MeddelandeDiv"].document.write(val);
		document.layers["MeddelandeDiv"].document.close();
	}else if(document.getElementById){
		document.getElementById("MeddelandeDiv").innerHTML=val;
	}
	return false;

}

//-->
</script>

</head>
<body bgcolor="#FFFFFF">

<div id="MeddelandeDiv" style="position:absolute">Resutatet kommer att visas här</div>
<br>
<br>
<div id="FormDiv" style="position:absolute; top:200">
<form method="get" onSubmit="return check_form(this)">
  Välj ett nummer:<br>
  <input type="radio" name="val" value="val1">
  Nummer 1<br>
  <input type="radio" name="val" value="val2">
  Nummer 2<br>
  <input type="radio" name="val" value="val3">
  Nummer 3<br>
  <br>
  <input type="submit" value="Skicka">
</form>
</div>

</body>
</html>

------------------
/Tor
www.tor.nu

252 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)