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

Javascript innerHTML

P: n/a
How can I get the innerHTML of a <div> area only when the page loads, then use that variable in a function?

Here is my code:
function setContent(zz)
{
var lb = document.getElementById('leftbar').innerHTML;
var rb = document.getElementById('rightbar').innerHTML;
document.getElementById("myContent").innerHTML = "<span class=\"title_Page\">"+Page[zz]+"</span>";
if (zz=="home") {
document.getElementById('leftbar').innerHTML = lb;
document.getElementById('rightbar').innerHTML = rb;
document.getElementById('leftbar').style.width = '135px';
document.getElementById('rightbar').style.width = '135px';
}
else {
document.getElementById('leftbar').innerHTML = "";
document.getElementById('rightbar').innerHTML = "";
document.getElementById('leftbar').style.width = '0px';
document.getElementById('rightbar').style.width = '0px';
}
}

I want lb and rb to be set only once (i.e. only when the page loads the first time). I tried putting those variables outside the function, but when I do they, they show up as undefined. So how could i code it so that when the page loads, it assigns the innerHTML to the two variables, but not any other time while that page is open?

Chris

--
Composed with Newz Crawler 1.4 http://www.newzcrawler.com/
Jul 20 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
In article <z0*********************@news4.srv.hcvlny.cv.net >, "Chris"
<ny******@yahoo.com> writes:
How can I get the innerHTML of a <div> area only when the page loads, then
use that variable in a function?

Here is my code:
function setContent(zz)
{
var lb = document.getElementById('leftbar').innerHTML;
var rb = document.getElementById('rightbar').innerHTML;


Remove the above two lines from the setContent function.

Use the bodys onload even to trigger a function that will set the global
variables to what you want.

var lb,rb;
function pageLoaded(){
lb = document.getElementById('leftbar').innerHTML;
rb = document.getElementById('rightbar').innerHTML;
}
<body onload="pageLoaded()">
Now, you can use the global lb and rb in your second function.
--
Randy
Jul 20 '05 #2

P: n/a
> In article <z0*********************@news4.srv.hcvlny.cv.net >, "Chris"
<ny******@yahoo.com> writes:
How can I get the innerHTML of a <div> area only when the page loads, then
use that variable in a function?

Here is my code:
function setContent(zz)
{
var lb = document.getElementById('leftbar').innerHTML;
var rb = document.getElementById('rightbar').innerHTML;


Remove the above two lines from the setContent function.

Use the bodys onload even to trigger a function that will set the global
variables to what you want.

var lb,rb;
function pageLoaded(){
lb = document.getElementById('leftbar').innerHTML;
rb = document.getElementById('rightbar').innerHTML;
}
<body onload="pageLoaded()">
Now, you can use the global lb and rb in your second function.
--
Randy

When I do that, both variables show undefined.

Chris

--
Composed with Newz Crawler 1.4 http://www.newzcrawler.com/
Jul 20 '05 #3

P: n/a
In article <EI******************@news4.srv.hcvlny.cv.net>, "Chris"
<ny******@yahoo.com> writes:

<snip>
When I do that, both variables show undefined.


Test page online? I tested it in IE6 just to confirm my beliefs.

var someVar = "Not loaded";

function checkFunction(){
alert(someVar)
}
function pageLoaded(){
someVar = "Loaded";
}

<body onload="pageLoaded()">

<button onclick="checkFunction()">Check the Var</button>

The alert I get is "Loaded". Sounds like you are trying to call something
before it exists, hence the request to see a test page.
--
Randy
Jul 20 '05 #4

P: n/a
> In article <EI******************@news4.srv.hcvlny.cv.net>, "Chris"
<ny******@yahoo.com> writes:

<snip>
When I do that, both variables show undefined.


Test page online? I tested it in IE6 just to confirm my beliefs.

var someVar = "Not loaded";

function checkFunction(){
alert(someVar)
}
function pageLoaded(){
someVar = "Loaded";
}

<body onload="pageLoaded()">

<button onclick="checkFunction()">Check the Var</button>

The alert I get is "Loaded". Sounds like you are trying to call something
before it exists, hence the request to see a test page.
--
Randy

I've tested it on IIS. As for calling something before it exists, would you recommend I put the function in the page header, an external js file, or somehwere in the <body>?

Thanks, Chris

--
Composed with Newz Crawler 1.4 http://www.newzcrawler.com/
Jul 20 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.