469,289 Members | 2,196 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,289 developers. It's quick & easy.

Go directly to desired page, in JavaScript

Hello everyone,

I would like to let visitors of my website be able to go directly to a
desired page, by using a URL like www.example.com?progname. I thought I
could do this as follows:

<html>
<frameset rows="88,*">
<frame name="head" noresize src="head.htm" />
<frameset cols="152,*">
<frame name="menu" noresize src="menu.htm" />
<script language="JavaScript">
prog = location.search
prog = prog.substr(1)
prog = prog.split("&")
if (prog=="progname") { document.write ("<frame name='body' noresize
src='progpage.htm' />") }
else if (prog==...
....
else { document.write ('<frame name="body" noresize src="mainpage.htm"
/>') }
</script>
</frameset>
</frameset>
</html>

I see that the above code doesn't produce a page for the body, but I can't
see why? Could anybody please tell me what I'm overlooking?

TIA and regards, Bert Visscher.
Jul 23 '05 #1
7 1289
Bert Visscher wrote on 10 aug 2004 in comp.lang.javascript:
prog = prog.split("&")
if (prog=="progname") {


[follow up to: comp.lang.javascript]

Dag Bert,

prog is not a string but an array.
If the calling url was:

http://mySite.nl/test.html?x=progname&y=blah

if (prog[0] == "x=progname") {
--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Jul 23 '05 #2
On Tue, 10 Aug 2004 10:25:18 +0200, Bert Visscher wrote:
I would like to let visitors of my website..


URL?

BTW ... alive.internet.lang.javascript,
(never heard of it..)
alt.comp.lang.javascript,
(what a load of crap..)
comp.lang.java.javascript,
(not an official group..)
comp.lang.javascript
(Ahhhh.. yes, this is where the JS gurus reside)

Please do not cross-post to 4 separate groups..
You may think your problem is that important,
others know it is not.
<http://www.physci.org/codes/javafaq.jsp#xpost>

Follow ups for this thread set to c.l.js ONLY..

[ Please note that even to post *this* message to
four groups has my newsreader whining at me.. ]

--
Andrew Thompson
http://www.PhySci.org/ Open-source software suite
http://www.PhySci.org/codes/ Web & IT Help
http://www.1point1C.org/ Science & Technology
Jul 23 '05 #3
Dag Evertjan,

The way I interpret your reply, the following code should work:

<html>
<frameset rows="88,*">
<frame name="kop" noresize src="kop.htm" />
<frameset cols="152,*">
<frame name="menu" noresize src="menu.htm" />
<script language="JavaScript">
prog = location.search
prog = prog.substr(1)
prog = prog.split("&")
if (prog[0]=="gezondheidslijn") { document.write ("<frame name='body'
src='pi-gezondheidslijn.htm' />") }
else { document.write ("<frame name='body' src='hoofdpagina.htm' />") }
</script>
</frameset>
</frameset>
</html>

I'm afraid it doesn't. Just like before, I see the top and left frame
appear, but there's no body.

TIA and regards, Bert V.

"Evertjan." <ex**************@interxnl.net> schreef in bericht
news:Xn********************@194.109.133.29...
Bert Visscher wrote on 10 aug 2004 in comp.lang.javascript:
prog = prog.split("&")
if (prog=="progname") {


[follow up to: comp.lang.javascript]

Dag Bert,

prog is not a string but an array.
If the calling url was:

http://mySite.nl/test.html?x=progname&y=blah

if (prog[0] == "x=progname") {
--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)

Jul 23 '05 #4
Bert Visscher wrote on 10 aug 2004 in comp.lang.javascript:
"Evertjan." <ex**************@interxnl.net> schreef in bericht
news:Xn********************@194.109.133.29...
Bert Visscher wrote on 10 aug 2004 in comp.lang.javascript:
> prog = prog.split("&")
> if (prog=="progname") {


[follow up to: comp.lang.javascript]

Dag Bert,

prog is not a string but an array.
If the calling url was:

http://mySite.nl/test.html?x=progname&y=blah

if (prog[0] == "x=progname") {

The way I interpret your reply, the following code should work:

<html>
<frameset rows="88,*">
<frame name="kop" noresize src="kop.htm" />
<frameset cols="152,*">
<frame name="menu" noresize src="menu.htm" />
<script language="JavaScript">
prog = location.search
prog = prog.substr(1)
prog = prog.split("&")
if (prog[0]=="gezondheidslijn") { document.write ("<frame
name='body'
src='pi-gezondheidslijn.htm' />") }
else { document.write ("<frame name='body' src='hoofdpagina.htm'
/>") }
</script>
</frameset>
</frameset>
</html>

I'm afraid it doesn't. Just like before, I see the top and left frame
appear, but there's no body.


This
= if (prog[0]=="gezondheidslijn") =
would require zoiets als:
http://mySite.nl/test.html?gezondheidslijn&y=blah
This cannot be the output of a <form>

Do you get javascript errors ?

Please start debugging by inserting a handful of alert()s:

<frame name='body'
<script type="text/JavaScript"> // the 'language=' is depriciated
var prog = location.search
alert(prog) // is there a & in the string ???
prog = prog.substr(1)
alert(prog) // do you see the same without the '?' ?
prog = prog.split("&")
alert(prog[0]) // do you see 'gezondheidslijn' ?
if (prog[0]=="gezondheidslijn"){
alert('ja') // 'if' is given true
document.write("src='pi-gezondheidslijn.htm'")
}
else {
alert('nee') // false
document.write("src='hoofdpagina.htm'")
}
</script>
/>

Are the two links correct ?
--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Jul 23 '05 #5

"Evertjan." <ex**************@interxnl.net> schreef in bericht
news:Xn********************@194.109.133.29...
Bert Visscher wrote on 10 aug 2004 in comp.lang.javascript:
"Evertjan." <ex**************@interxnl.net> schreef in bericht
news:Xn********************@194.109.133.29...
Bert Visscher wrote on 10 aug 2004 in comp.lang.javascript:
> prog = prog.split("&")
> if (prog=="progname") {

[follow up to: comp.lang.javascript]

Dag Bert,

prog is not a string but an array.
If the calling url was:

http://mySite.nl/test.html?x=progname&y=blah

if (prog[0] == "x=progname") {

The way I interpret your reply, the following code should work:

<html>
<frameset rows="88,*">
<frame name="kop" noresize src="kop.htm" />
<frameset cols="152,*">
<frame name="menu" noresize src="menu.htm" />
<script language="JavaScript">
prog = location.search
prog = prog.substr(1)
prog = prog.split("&")
if (prog[0]=="gezondheidslijn") { document.write ("<frame
name='body'
src='pi-gezondheidslijn.htm' />") }
else { document.write ("<frame name='body' src='hoofdpagina.htm'
/>") }
</script>
</frameset>
</frameset>
</html>

I'm afraid it doesn't. Just like before, I see the top and left frame
appear, but there's no body.


This
= if (prog[0]=="gezondheidslijn") =
would require zoiets als:
http://mySite.nl/test.html?gezondheidslijn&y=blah
This cannot be the output of a <form>

Do you get javascript errors ?

Please start debugging by inserting a handful of alert()s:

<frame name='body'
<script type="text/JavaScript"> // the 'language=' is depriciated
var prog = location.search
alert(prog) // is there a & in the string ???
prog = prog.substr(1)
alert(prog) // do you see the same without the '?' ?
prog = prog.split("&")
alert(prog[0]) // do you see 'gezondheidslijn' ?
if (prog[0]=="gezondheidslijn"){
alert('ja') // 'if' is given true
document.write("src='pi-gezondheidslijn.htm'")
}
else {
alert('nee') // false
document.write("src='hoofdpagina.htm'")
}
</script>
/>

Are the two links correct ?


Hoi Evertjan,

I flipped a couple of quotes, and ended up with the following complete code:

<html>
<frameset rows="88,*">
<frame name="kop" noresize src="kop.htm" />
<frameset cols="152,*">
<frame name="menu" noresize src="menu.htm" />
<frame name="body"
<script type="text/JavaScript">
var prog = location.search
alert(prog) // is there a & in the string ???
prog = prog.substr(1)
alert(prog) // do you see the same without the '?' ?
prog = prog.split("&")
alert(prog[0]) // do you see 'gezondheidslijn' ?
if (prog[0]=="gezondheidslijn")
{
alert("ja") // 'if' is given true
document.write('src="pi-gezondheidslijn.htm"')
}
else
{
alert("nee") // false
document.write('src="hoofdpagina.htm"')
}
</script>
/>
</frameset>
</frameset>
</html>

I think we're getting closer:
This time around, regardless of whether I add "?gezondheidslijn", I get a
body...but it stays blank. And, as if that's not curious enough, I'm not
getting any of the alerts.

Oh, I nearly forgot to write that I'm not getting any error messages.

TIA and regards, Bert V.
Jul 23 '05 #6
Bert Visscher wrote on 12 aug 2004 in comp.lang.javascript:
I think we're getting closer:
This time around, regardless of whether I add "?gezondheidslijn", I
get a body...but it stays blank. And, as if that's not curious enough,
I'm not getting any of the alerts.

Oh, I nearly forgot to write that I'm not getting any error messages.


Tja, Bert, dan wordt de hele script niet uitgevoerd in een frame
declaratie!!!

Dit werkt wel:

<html>

<script type="text/JavaScript">
function kies(x){
myBody.location.href=
(location.search.substr(1).split("&")[0]==
"gezondheidslijn")
?"pi-gezondheidslijn.htm":"hoofdpagina.htm"
}
</script>

<frameset rows="88,*" onLoad="kies()">
<frame name="kop" noresize src="kop.htm" />
<frameset cols="152,*">
<frame name="menu" noresize src="menu.htm" />
<frame name="myBody" />
</frameset>
</frameset>

</html>

[ik heb de code sterk verkort en de naam "body" vervangen,
omdat dat soms een "reserved word" zou kunnen zijn.]
--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Jul 23 '05 #7
> I think we're getting closer:
This time around, regardless of whether I add "?gezondheidslijn", I get a
body...but it stays blank. And, as if that's not curious enough, I'm not
getting any of the alerts.

Oh, I nearly forgot to write that I'm not getting any error messages.

TIA and regards, Bert V.


I had a similar problem. I got it to work with iframes using the
following:

<script language="JavaScript">
page = "main.htm"; //default page
if(location.search) page = location.search.substring(1);

//insert extra logic here if want

document.write('<iframe src="' + page + '" id="myIframe"
name="myIframe" width="630" scrolling="no"
frameborder="1"></iframe>');
</script>

You could add logic in there, like:

if (page = "help") page = help.html;

I hope this helps.

Jim
Jul 23 '05 #8

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

6 posts views Thread by David | last post: by
reply views Thread by suresh191 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.