Web-TorMedlem sedan nov. 200011 794 inlägg
Det här är kanske jättelätt eller så kanske det inte går. Jag är helt helt blåst vad gäller JavaScript:
<html>
<head>
<title></title>
<script type="text/javascript" language="JavaScript">
<!--
function kolla(form){
if(form.txt1.value == "hej"){
meddelande = "Rätt"
}else{
meddelande = "fel"
}
// [b]1111 Skriver jag ut "meddelande" här så blir det fel 111[/b]
//document.write (meddelande)
}
//-->
</script>
</head>
<body bgcolor="#FFFFFF">
<br><br>
<script type="text/javascript" language="JavaScript">
<!--
// [b]222 Jag vill skriva ut "meddelande" här, men hur? 222[/b]
document.write (meddelande)
//-->
</script>
<form name="val">
<br>
<input type="text" name="txt1">
<br>
<br>
<input type="Submit" name="Submit" value="Submit" onClick="kolla(this.form)">
</form>
</body>
</html>
Allt funkar om jag skriver ut variabeln "meddelande" i den översta delen (där det står ettor) men då försvinner all annan text på sidan. Jag vill skriva ut "meddelande" i den nedre delen (där det står tvåor) men då är variabeln inte deklarerad så då får jag ett felmeddelande. x(
Hur gör jag?
------------------
/Tor
Gör ett hembesök
[Redigerat av Web-Tor den 24 apr 2001]
JohnsenMedlem sedan juli 2000718 inlägg
Det du får göra är att skriva till ett lager och det sker på lite olika sätt beroende på vilken läsare du har.
Nedan ser du hur man skriver till ett laget i IE.
<html>
<head>
<title></title>
<script type="text/javascript" language="JavaScript">
<!--
function kolla(form){
if(form.txt1.value == "hej"){
meddelande = "Rätt"
}else{
meddelande = "fel"
}
document.all("diven").innerHTML=meddelande //Här skriver det...
return false; // false eftersom inte sidan skall skickas vid submit...
}
//-->
</script>
</head>
<body bgcolor="#FFFFFF">
<br><br>
<div id="diven" style="position:absolute;">Meddelandet</div>
<form name="val">
<br>
<input type="text" name="txt1">
<br>
<br>
<input type="Submit" name="Submit" value="Submit" onClick="return kolla(this.form)">
</form>
</body>
</html>
Vill du skriva till ett lager i NN4+ använder du:
document.layers["diven"].document.write(meddelande);
document.layers["diven"].document.close();
Och för NS6 (funkar även för IE5+)
document.getElementById("diven").innerHTML=meddelande;}
Om du vill sätta ihop detta i en och samma funktion blir det:
function kolla(form){
if(form.txt1.value == "hej"){meddelande = "Rätt"}
else{meddelande = "fel"}
if(document.all){document.all("diven").innerHTML=meddelande;}
else if(document.layers){document.layers["diven"].document.write(meddelande);document.layers["diven"].document.close();}
else if(document.getElementById){document.getElementById("diven").innerHTML=meddelande;}
return false;
}
------------------
- J-O-H-N-S-E-N -
------------------
Web-TorMedlem sedan nov. 200011 794 inlägg
Du har rätt som vanligt Johnsen! :D
Då har man lärt sig nåt idag ocskå... :)
------------------
/Tor
Gör ett hembesök