webForumDet fria alternativet

Öka med 1.

6 svar · 202 visningar · startad av Gustav

GustavMedlem sedan jan. 20001 932 inlägg
#1

Halluuuuu!

Jag håller på med ett kunskapsprov som man ska kunna göra på internet.

Då har jag två navigeringspilar...en framåt och en bakåt (bland frågorna). Varje fråga består av en egen html-sida som heter 1.html, 2.html, 3.html osv.

Som det är nu så får ju jag koda in adressen dit pilarna ska länka...de ändrar ju sig med +1 för varje fråga.

Min fråga är: Kan man skriva ett script som gör att adressen (som pilarna ska gå till) alltid är ett (1) nummer större än adressen man är på.

Alltså är man på "prov/4.html" så ska bakåtpilen länka till "prov/3.html" och framåtpilen till "prov/5.html".

Nån som fattar vad jag menar? ;)

NissemanMedlem sedan jan. 2000189 inlägg
#2

Nu vet jag inte om det här fungerar överhuvud taget, men det här är min ide:
Man kan väl läsa in adressen och sen ta parseInt på den för att hitta numret. Sen skapar man en ny adress med nummer++

GustavMedlem sedan jan. 20001 932 inlägg
#3

Jo, det var nåt sånt jag hade tänkt mig. Fast jag har ingen aning om hur man gör...nån som vill ställa upp för en slagen man? ;)

GustavMedlem sedan jan. 20001 932 inlägg
#4

Glöm inte bort mig nu... *snyft*

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#5

Själv kan jag inte ParseInt så jag löste det med en querystring och ett script från Jojoxx. Exempel:

<script type="text/javascript">
/* Detta script finns att hämta på [url="http://www.jojoxx.net"]http://www.jojoxx.net[/url]  och
   får användas fritt så länge som dessa rader står kvar. */

function getVar(varname) {
	var st = unescape(location.search);
	st = st.replace(/\+/g," ");
	if (st.indexOf(varname) != -1){
		var tempst = st.substring(st.indexOf(varname + "=") + varname.length + 1,st.length);
		if (tempst.indexOf("&") != -1) {
			var newtemp = tempst.substring(0, tempst.indexOf("&"));
			return newtemp;
		} else {
			return tempst;
		}
	} else {
		return("");
	}
}
</script>
<script type="text/javascript">
nummer=getVar("nummer")
back=nummer-1
forward=nummer+1
document.write("<a href=\"" + back + ".html?nummer=" + back + "\">Bakåt</a> ")
document.write("<a href=\"" + forward + "?nummer=" + forward + "\">Framåt</a>")
</script>

Då måste du skriva in adressen så här: .../5.html?nummer=5.
Sen borde man kanske lägga in en liten if sats så att man inte kommer bakåt hur långt som helst.. :)

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

JohnsenMedlem sedan juli 2000836 inlägg
#6

Så här då!

<SCRIPT LANGUAGE="JavaScript"><!--
var nuUrl =document.location.href;
var sida = nuUrl.substring(nuUrl.length-6,nuUrl.length-5)

document.write("<a href="+(sida-1)+".html>Förra sidan</a> ")
document.write("<a href="+(sida-(-1))+".html>Nästa sida</a> ")
//--></SCRIPT>

Man behöver ju inte krångla till det ;)

------------------
Eskimåer har över 40 ord för snö, men bara 3 för bottenlån med rörlig ränta.

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#7

Mycket bättre än min lösning! :)

------------------
/Erik
www.juhlin.nu /sk8files/ /mp2d/

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)