webForumDet fria alternativet
Logga in / Bli medlem

Problemlösning

JavaScript

1 svar · 238 visningar · startad av Krille29

Medlem sedan dec. 200218 inlägg
Trådstart#1

Hej!

Se bifogat script nedan. Jag vill få till en alert-box med texten "beställningen skickad!" och att det data som personen valt ska visas samtidigt. Det ska se ut som en bekräftelse på det man valt. Syftet med detta, är att jag vill simulera att beställningsdatat skickas till en mottagande server.

Jag får inte till det, använder en bok som heter JavaScript 1.3-programmering, men jag tycker att den inte hjälper mig med mitt problem. Är det nå´n som skulle vilja hjälpa till?

Tacksam för någons hjälp!

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Final//EN">
<html>
<head>
<title>Stuguthyrning</title>
<script>
function stugpris(){
var totalpris = parseInt(document.formen.temporar.value) * parseFloat(document.formen.temporar2.value) ;
var tmp1=totalpris*0.9
if (document.formen.faktura.checked==true){
var tmp2=tmp1+30;}
else{
tmp2=tmp1;
}
document.formen.pris.value=tmp2+parseInt(document.formen.stadhidden.value)

var ikryssad=false
for (x=0; x<document.formen.stuga.length; x++){
if (document.formen.stuga[x].checked) ikryssad=true;
}
if (ikryssad == false) alert("välj stugbokning");

var ikryssad=false
for (x=0; x<document.formen.vecka.length; x++){
if (document.formen.vecka[x].checked) ikryssad=true;
}
if (ikryssad == false) alert("välj vecka");

}
</script>
<style>
<!--
body{
font-family:tahoma,verdana,arial;
font-size:11px;}
//-->
</style>
</head>
<body>
<form name="formen" action="stugor.asp" method="post" onSubmit="stugpris();">
Pris på stugbokning för vuxen:<br>
A:
<input type="radio" onclick="document.formen.temporar.value=this.value;" name="stuga" value="2000">
B:
<input type="radio" onclick="document.formen.temporar.value=this.value;" name="stuga" value="1600">
C:
<input type="radio" onclick="document.formen.temporar.value=this.value;" name="stuga" value="1000">
<br>
Pris på stugbokning för barn:<br>
A:
<input type="radio" onclick="document.formen.temporar.value=this.value;" name="stuga" value="1100">
B:
<input type="radio" onclick="document.formen.temporar.value=this.value;" name="stuga" value="800">
C:
<input type="radio" onclick="document.formen.temporar.value=this.value;" name="stuga" value="500">
<br>Vecka 1-4<br>
v1:
<input type="radio" onclick="document.formen.temporar2.value=this.value;" name="vecka" value="1">
v2:
<input type="radio" onclick="document.formen.temporar2.value=this.value;" name="vecka" value="0.95">
v3:
<input type="radio" onclick="document.formen.temporar2.value=this.value;" name="vecka" value="0.7">
v4:
<input type="radio" onclick="document.formen.temporar2.value=this.value;" name="vecka" value="0.85">
<br>
<br>
Allmän rabatt 10%:
<input type="checkbox" name="checkbox" value="checkbox" disabled checked>
<br>
Ingen städ:
<input type="radio" name="stadavg" onClick="document.formen.stadhidden.value=document.formen.stadavg[0].value;" value="0" checked>
<br>
Halv städagift:
<input type="radio" name="stadavg" onClick="document.formen.stadhidden.value=document.formen.stadavg[1].value;" value="450">
<br>
Hel städavgift:
<input type="radio" name="stadavg" onClick="document.formen.stadhidden.value=document.formen.stadavg[2].value;" value="750">
<input type="hidden" name="stadhidden" value="0">
<br>
Betalas med faktura:
<input type="checkbox" name="faktura" value="1">
30kr <br>
<br>
Priset för en vecka är:
<input type="text" name="pris" size="4" style="border:none;font-size:9px;" value="0">
kr.<br>
<input type="button" onClick="stugpris();" value="Beräkna">
<input type="reset" name="Reset" value="Återställ">
<input type="hidden" name="temporar"><input type="hidden" name="temporar2">
</form>
<br>
<br>
</font>
</body>
</html>

Medlem sedan juli 2000836 inlägg
#2

Prova detta:

<script> 
function stugpris(){ 
var totalpris = parseInt(document.formen.temporar.value) * parseFloat(document.formen.temporar2.value) ; 
var tmp1=totalpris*0.9 
if (document.formen.faktura.checked==true){ 
var tmp2=tmp1+30;} 
else{ 
tmp2=tmp1; 
} 
document.formen.pris.value=tmp2+parseInt(document.formen.stadhidden.value) 

var ikryssad=false 
for (x=0; x<document.formen.stuga.length; x++){ 
if (document.formen.stuga[x].checked) ikryssad=true; 
} 
if (ikryssad == false) alert("välj stugbokning"); return false;   //--- liten ändring...

var ikryssad=false 
for (x=0; x<document.formen.vecka.length; x++){ 
if (document.formen.vecka[x].checked) ikryssad=true; 
} 
if (ikryssad == false) alert("välj vecka"); 

//------------------------------ tillägg ----------------------------------
	if(ikryssad){
		var sPris
		var Wecka
		var rabatt
		var stadn
		var fakt
		var tot

		for(var i=0; i<document.formen.stuga.length; i++){
			if(document.formen.stuga[i].checked){
				sPris = document.formen.stuga[i].value;
				break;
			}
		}

		for(var i=0; i<document.formen.vecka.length; i++){
			if(document.formen.vecka[i].checked){
				if(document.formen.vecka[i].value == 1){
					Wecka = "v1";
				}
				if(document.formen.vecka[i].value == 0.95){
					Wecka = "v2";
				}
				if(document.formen.vecka[i].value == 0.7){
					Wecka = "v3";
				}
				if(document.formen.vecka[i].value == 0.85){
					Wecka = "v4";
				}
				break;
			}
		}

		rabatt = (document.formen.checkbox.checked)? 10 : 0;

		for(var i=0; i<document.formen.stadavg.length; i++){
			if(document.formen.stadavg[i].checked){
				stadn = document.formen.stadavg[i].value;
				break;
			}
		}

		fakt = (document.formen.faktura.checked)? 30 : 0;

		tot = document.formen.pris.value;

		msg =	"Beställningen skickad!\n\n"    +
			"Stugpris: " + sPris  + " kr\n" +
			"Vecka:    " + Wecka  + "\n"    +
			"rabatt:   " + rabatt + " %\n"  +
			"Städning: " + stadn  + " kr\n" +
			"Faktura:  " + fakt   + " kr\n" +
			"——————————\n"               +
			"totalt:   " + tot +"\n";

		alert(msg);
	}
//---------------------------- tillägg slut -------------------------------

} 
</script>
258 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)