By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,528 Members | 1,304 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,528 IT Pros & Developers. It's quick & easy.

two javascript questions

P: n/a
Hi. Does anyone knows that how to retrieve variable on a link from
javascript.
e.g., here I have a link

<a href="http://www.domain.com/index.html?id=1111"
onClick="getid();">click me</a>
<div id="display"></div>

When I click the link, getid function will retrieve the id value from
the link which is "1111" and display it within <divtag by using
innerHTML. No page refresh.

Is it possible to do that? If so, does anyone know how to do it?
Thanks

Sep 27 '06 #1
Share this Question
Share on Google+
7 Replies


P: n/a
Not exactly sure how you that but why don't you build your link as
follows:

<a href="javascript:void(0)" onClick="getid(1111);">click me</a>
<div id="display"></div>

Brian

Sep 27 '06 #2

P: n/a
Hi,

Brian D wrote:
Not exactly sure how you that but why don't you build your link as
follows:

<a href="javascript:void(0)" onClick="getid(1111);">click me</a>
<div id="display"></div>

Brian
Because that's bad programming. If JavaScript is disabled, it will fail.
Additionally, you should never use the javascript: pseudo protocol in a
href.

http://www.jibbering.com/faq/#FAQ4_24

Greetings,
Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
PhotoAlbum: http://www.galasoft-LB.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
Sep 27 '06 #3

P: n/a
Hi,

LaughOutLoud wrote:
Hi. Does anyone knows that how to retrieve variable on a link from
javascript.
e.g., here I have a link

<a href="http://www.domain.com/index.html?id=1111"
onClick="getid();">click me</a>
<div id="display"></div>

When I click the link, getid function will retrieve the id value from
the link which is "1111" and display it within <divtag by using
innerHTML. No page refresh.

Is it possible to do that? If so, does anyone know how to do it?
Thanks
Modify getid() to getid( this );

When the method is called, the "A" node is passed to the function, and
you can access its "href" property, which carries the information you
want to display.

"return false;" in the onclick prevents the link to be followed if
JavaScript is enabled (you said you don't want a postback).

<a href="http://www.domain.com/index.html?id=1111"
onclick="getid( this );return false;">click me</a>
<div id="display">&nbsp;</div>

with

function getid( nLink )
{
if ( nLink
&& nLink.href != null
&& nLink.href.indexOf( "=" ) -1 )
{
var strId = nLink.href.split( "=" )[1];
var nDisplay = document.getElementById( "display" );
if ( display )
{
display.firstChild.nodeValue = strId;
}
}
}

HTH,
Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
PhotoAlbum: http://www.galasoft-LB.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
Sep 27 '06 #4

P: n/a
Brian D said the following on 9/27/2006 9:28 AM:
Not exactly sure how you that but why don't you build your link as
follows:
Because that is a stupid way to use a link?

--
Randy
Chance Favors The Prepared Mind
comp.lang.javascript FAQ - http://jibbering.com/faq & newsgroup weekly
Javascript Best Practices - http://www.JavascriptToolbox.com/bestpractices/
Sep 27 '06 #5

P: n/a
Laurent Bugnion said the following on 9/27/2006 10:15 AM:
Hi,

LaughOutLoud wrote:
>Hi. Does anyone knows that how to retrieve variable on a link from
javascript.
e.g., here I have a link

<a href="http://www.domain.com/index.html?id=1111"
onClick="getid();">click me</a>
<div id="display"></div>

When I click the link, getid function will retrieve the id value from
the link which is "1111" and display it within <divtag by using
innerHTML. No page refresh.

Is it possible to do that? If so, does anyone know how to do it?
Thanks

Modify getid() to getid( this );

When the method is called, the "A" node is passed to the function, and
you can access its "href" property, which carries the information you
want to display.

"return false;" in the onclick prevents the link to be followed if
JavaScript is enabled (you said you don't want a postback).

<a href="http://www.domain.com/index.html?id=1111"
onclick="getid( this );return false;">click me</a>
<div id="display">&nbsp;</div>

with

function getid( nLink )
{
if ( nLink
&& nLink.href != null
&& nLink.href.indexOf( "=" ) -1 )
{
var strId = nLink.href.split( "=" )[1];
var nDisplay = document.getElementById( "display" );
if ( display )
{
display.firstChild.nodeValue = strId;
}
}
}
Possibly simpler:

function getid(idToCheck){
document.getElementById( "display" ).innerHTML = idToCheck;
}

<a href="http://www.domain.com/index.html?id=1111"
onClick="getid(this.href.substring(this.href.lastI ndexOf('=')+1));
return false">click me</a>
<div id="display"></div>

No, it doesn't have the built in tests, but if the programmer is
programming the page then they should know whether the id is present or not.

--
Randy
Chance Favors The Prepared Mind
comp.lang.javascript FAQ - http://jibbering.com/faq & newsgroup weekly
Javascript Best Practices - http://www.JavascriptToolbox.com/bestpractices/
Sep 27 '06 #6

P: n/a
Hi,

Randy Webb wrote:
Possibly simpler:

function getid(idToCheck){
document.getElementById( "display" ).innerHTML = idToCheck;
}

<a href="http://www.domain.com/index.html?id=1111"
onClick="getid(this.href.substring(this.href.lastI ndexOf('=')+1));
return false">click me</a>
<div id="display"></div>

No, it doesn't have the built in tests, but if the programmer is
programming the page then they should know whether the id is present or
not.
I am a maniac, I know ;-)

Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
PhotoAlbum: http://www.galasoft-LB.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
Sep 27 '06 #7

P: n/a
What I wanna do is try to put session id into a href. When user click
on the link, javascript can read the session id and pass it to server
and check the session is still available or not. If not, redirect to
index page.

Thanks for the script, I'll test it now.


Laurent Bugnion wrote:
Hi,

Randy Webb wrote:
Possibly simpler:

function getid(idToCheck){
document.getElementById( "display" ).innerHTML = idToCheck;
}

<a href="http://www.domain.com/index.html?id=1111"
onClick="getid(this.href.substring(this.href.lastI ndexOf('=')+1));
return false">click me</a>
<div id="display"></div>

No, it doesn't have the built in tests, but if the programmer is
programming the page then they should know whether the id is present or
not.

I am a maniac, I know ;-)

Laurent
--
Laurent Bugnion, GalaSoft
Software engineering: http://www.galasoft-LB.ch
PhotoAlbum: http://www.galasoft-LB.ch/pictures
Support children in Calcutta: http://www.calcutta-espoir.ch
Sep 27 '06 #8

This discussion thread is closed

Replies have been disabled for this discussion.