xsl-list
[Top] [All Lists]

XSL and javascript

2003-03-11 12:50:09

I am not too experienced when it comes to javascript, but I've been playing 
with XSL
for the last few months and i think I'm pretty good at it. I'm having a hard 
time
interweaving the two.

I found this Javascript code that will show times for different time zones and 
update
a text input field accordingly, the function GetTime is called from body 
onLoad().
The code updates the text fields by their names. What I want to do is have a GMT
offset somewhere in the xml, for each of my "city" elements, and have this 
function
update each text input field, is it possible to do this all from the XSL 
stylesheet,
and just pass the gmt offset in an xml element? I was thinking I could change 
this
javascript code to have a for loop that iterates over all the cities, but then 
how is
it going to know what the GMT offset is? A hidden form element perhaps? I am 
totally
lost here, someone who knows what they're doing please help me!

function GetTime() { 
        var dt = new Date();
        var def = dt.getTimezoneOffset()/60;
        var gmt = (dt.getHours() + def);

        document.clock.local.value = (IfZero(dt.getHours()) + ":" + 
IfZero(dt.getMinutes())
+ ":" +         

IfZero(dt.getSeconds()));

        var ending = ":" + IfZero(dt.getMinutes()) + ":" +  
IfZero(dt.getSeconds());

        var rome =check24(((gmt + 1) > 24) ? ((gmt + 1) - 24) : (gmt + 1));
        document.clock.rome.value = (IfZero(rome) + ending);
        var isr =check24(((gmt + 2) > 24) ? ((gmt + 2) - 24) : (gmt + 2));
        document.clock.Israel.value = (IfZero(isr) + ending);

        ....
        snip
        ....

        var mid =check24(((gmt + (24-2)) > 24) ? ((gmt + (24-2)) - 24) : (gmt + 
(24-2)));
        mid = (mid >= 24) ? mid - 24 : mid;
        document.clock.mid.value = (IfZero(mid) + ending);
        var azo =check24(((gmt + (24-1)) > 24) ? ((gmt + (24-1)) - 24) : (gmt + 
(24-1)));
        azo = (azo >= 24) ? azo - 24 : azo;
        document.clock.azo.value = (IfZero(azo) + ending);
        setTimeout("GetTime()", 1000);
}

function IfZero(num) {
        return ((num <= 9) ? ("0" + num) : num);
}

function check24(hour) {
        return (hour >= 24) ? hour - 24 : hour;
}

...

<BODY onLoad="javascript:GetTime();">
Hello everybody!<br>

<center>
<form name="clock">
<strong>Local Time <input type="text" size="8" name="local" readonly
style="border-style: none; 

border-width: 1; color: blue; font-family: Courier;"></strong>
<p>
Eniwetok (GMT-12)  <input type="text" size="8" name="eniw" style="border-style: 
none;
border-width: 

1;"><br>
Samoa (GMT-11)  <input type="text" size="8" name="sam" style="border-style: 
dotted;"><br>
Hawaii (GMT-10)  <input type="text" size="8" name="Hawaii" style="border-style: 
none;">
<p>
Alaska (GMT-9)  <input type="text" size="8" name="alaska" style="border-style:
none;"><br>
Pacific Time (GMT-8)  <input type="text" size="8" name="pacif" 
style="border-style:
none;"><br>
Mountain Time (GMT-7)  <input type="text" size="8" name="mount" 
style="border-style:
none;">
<p>

Regards,

Jeffrey Moss
jeff(_at_)americom(_dot_)com







 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>