Help | Site Map
Connecting Tech Pros Worldwide
 
 
LinkBack Thread Tools
  #1  
Old February 21st, 2006, 01:45 PM
firstcustomer@gmail.com
Guest
 
Posts: n/a
Default dynamic drop down menu (part 2)...

Further to my earlier post, I've found something that does partly what
I'm doing, but there are two issues:

1) There is an error in the script. Being a Javascript newbie, I've no
idea what the problem is.

2) I don't know how to re-program the script so that it opens up a url
depending on the choices made.

Here is the code (thanks Google!), I'd appreciate any help the you can
give.



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE>Dynamic Dropdown Boxes</TITLE>
<META NAME="Generator" CONTENT="TextPad 3.0">
<META NAME="Author" CONTENT="Heidi Housten">
</HEAD>


<style>
body,table,td {font-family:verdana; font-size:9pt}
select {width:130;font-family:verdana}
pre { font-size:9pt }
</style>





<script language=javascript>
<!--
mainOpt = new Array()
subOpt = new Array()
mainOpt[0] = "How to relax"
subOpt [0] = new Array("","","")
mainOpt[1] = "Hot Spots"
subOpt [1] = new Array("Pick a Hot Spot","Mojave","Mars","Death
Valley","Mt. St. Helens")
mainOpt[2] = "Festivals"
subOpt [2] = new Array("Which One?","Mardi Gras","Cinco de
Mayo","Midsummer","Kite Festival")
mainOpt[3] = "Good Books"
subOpt [3] = new Array("Which Book?","N is for Noose","Four to
Score","A Grave Talent","Six of One")
mainOpt[4] = "Holidays"
subOpt [4] = new Array("Choose
Holiday","Cruises","Safaris","Ballooning","Adventu res")
function init()
{

fillCombo(document.forms.myMenus.mainMenu,mainOpt)
fillCombo(document.forms.myMenus.mainBox,mainOpt)
}

function fillCombo(cmbBox,aryMenu)
{
cmbBox.length = 0 // Clear out the current options
for (menuOpt in aryMenu)
{
cmbBox.options[cmbBox.length] = new
Option(aryMenu[menuOpt],cmbBox.length)
}
//Show first item if it is a drop down
cmbBox.selectedIndex=0
}
//-->
</script>

<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#FF0000" onload="init()">
<center>
<form name=myMenus>
<br>an example<br><br>
<!-- do select template for older browsers, some
can't change size dynamically -->
<select name=mainMenu
onchange="fillCombo(subMenu,subOpt[this.selectedIndex])">
<option>
<option>
<option>
<option>
<option>
<option>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
</select><br><br>
<select name=subMenu>
<option>
<option>
<option>
<option>
<option>
<option>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
</select>
<br>
</form>
</center>
</BODY>
</HTML>

  #2  
Old February 21st, 2006, 02:25 PM
Beauregard T. Shagnasty
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

firstcustomer@gmail.com wrote:
[color=blue]
> Here is the code (thanks Google!), I'd appreciate any help the you can
> give.[/color]

I don't do JavaScript, but while we're here...
[color=blue]
> <style>
> body,table,td {font-family:verdana; font-size:9pt}
> select {width:130;font-family:verdana}
> pre { font-size:9pt }
> </style>[/color]

9pt? Points are for printing. Many people won't be able to read that,
and may not be able to resize it in some browsers. Set your font-size to
100%.

http://www.xs4all.nl/~sbpoley/webmatters/fontsize.html
http://www.xs4all.nl/~sbpoley/webmatters/verdana.html

--
-bts
-Warning: I brake for lawn deer
  #3  
Old February 21st, 2006, 03:35 PM
Jonathan N. Little
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

firstcustomer@gmail.com wrote:[color=blue]
> Further to my earlier post, I've found something that does partly what
> I'm doing, but there are two issues:[/color]


The reason you did not get a satifactory response is that most feel that
what your are attempting is a 'bad idea'. But in the matter of
JavaScript (which must be enabled for the form to work, the other bad
idea) you have some obvious errors which I will show to you, educational
and all.[color=blue]
>
> 1) There is an error in the script. Being a Javascript newbie, I've no
> idea what the problem is.
>
> 2) I don't know how to re-program the script so that it opens up a url
> depending on the choices made.
>
> Here is the code (thanks Google!), I'd appreciate any help the you can
> give.
>
>
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">[/color]

Ugh, please look up doctype. This is ancient.[color=blue]
> <HTML>
> <HEAD>
> <TITLE>Dynamic Dropdown Boxes</TITLE>
> <META NAME="Generator" CONTENT="TextPad 3.0">
> <META NAME="Author" CONTENT="Heidi Housten">
> </HEAD>
>
>
> <style>
> body,table,td {font-family:verdana; font-size:9pt}
> select {width:130;font-family:verdana}
> pre { font-size:9pt }
> </style>
>
>
>
>[/color]

Next although ending JavaScript statements with a ';' is optional I
recommend it because is prevents errors when a single statement spans
more than on line. Also your can gang more than one statement on a
single line:
var aOpt=new Array; var oMine=new Object;
[color=blue]
>
> <script language=javascript>
> <!--
> mainOpt = new Array()
> subOpt = new Array()
> mainOpt[0] = "How to relax"
> subOpt [0] = new Array("","","")
> mainOpt[1] = "Hot Spots"
> subOpt [1] = new Array("Pick a Hot Spot","Mojave","Mars","Death
> Valley","Mt. St. Helens")
> mainOpt[2] = "Festivals"
> subOpt [2] = new Array("Which One?","Mardi Gras","Cinco de
> Mayo","Midsummer","Kite Festival")
> mainOpt[3] = "Good Books"
> subOpt [3] = new Array("Which Book?","N is for Noose","Four to
> Score","A Grave Talent","Six of One")
> mainOpt[4] = "Holidays"
> subOpt [4] = new Array("Choose
> Holiday","Cruises","Safaris","Ballooning","Adventu res")
> function init()
> {
>
> fillCombo(document.forms.myMenus.mainMenu,mainOpt)
> fillCombo(document.forms.myMenus.mainBox,mainOpt)[/color]
Incorrect here-------------------------^^------^^^
should be:

fillCombo(document.forms.myMenus.subMenu,subOpt[0]);

to fill the second SELECT "subMenu" with the 1st array "subOpt[0]" upon
initialization.

[color=blue]
> }
>
> function fillCombo(cmbBox,aryMenu)
> {
> cmbBox.length = 0 // Clear out the current options
> for (menuOpt in aryMenu)
> {
> cmbBox.options[cmbBox.length] = new
> Option(aryMenu[menuOpt],cmbBox.length)
> }
> //Show first item if it is a drop down
> cmbBox.selectedIndex=0
> }
> //-->
> </script>
>
> <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#FF0000" onload="init()">
> <center>
> <form name=myMenus>
> <br>an example<br><br>
> <!-- do select template for older browsers, some
> can't change size dynamically -->
> <select name=mainMenu
> onchange="fillCombo(subMenu,subOpt[this.selectedIndex])">[/color]
-------------------------^^^
should pass the complete reference to the SELECT object:

onchange="fillCombo(this.form.subMenu, subOpt[this.selectedIndex]);


[color=blue]
> <option>
> <option>
> <option>
> <option>
> <option>
> <option>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
> </select><br><br>
> <select name=subMenu>
> <option>
> <option>
> <option>
> <option>
> <option>
> <option>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
> </select>
> <br>
> </form>
> </center>
> </BODY>
> </HTML>
>[/color]

Probably more but that is what I found on quick examination.

--
Take care,

Jonathan
-------------------
LITTLE WORKS STUDIO
http://www.LittleWorksStudio.com
  #4  
Old February 21st, 2006, 07:25 PM
Neil Monk
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...


"Beauregard T. Shagnasty" <a.nony.mous@example.invalid> wrote in message
news:ReFKf.47721$id5.22344@bgtnsc04-news.ops.worldnet.att.net...[color=blue]
> firstcustomer@gmail.com wrote:
>[color=green]
>> Here is the code (thanks Google!), I'd appreciate any help the you can
>> give.[/color]
>
> I don't do JavaScript, but while we're here...
>[color=green]
>> <style>
>> body,table,td {font-family:verdana; font-size:9pt}
>> select {width:130;font-family:verdana}
>> pre { font-size:9pt }
>> </style>[/color]
>
> 9pt? Points are for printing. Many people won't be able to read that,
> and may not be able to resize it in some browsers. Set your font-size to
> 100%.
>
> http://www.xs4all.nl/~sbpoley/webmatters/fontsize.html
> http://www.xs4all.nl/~sbpoley/webmatters/verdana.html[/color]
<snip>

Thanks for your comments. Again, this is not relevent to my project. If this
was for a "proper" website (as in to go on the WWW, and be used
cross-browser, then yes, I'd agree).

Thanks for your comments.
--
Neil


  #5  
Old February 21st, 2006, 07:25 PM
Neil Monk
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...


"Jonathan N. Little" <lws4art@centralva.net> wrote in message
news:43fb3119$0$25075$cb0e7fc6@news.centralva.net. ..[color=blue]
> firstcustomer@gmail.com wrote:[color=green]
>> Further to my earlier post, I've found something that does partly what
>> I'm doing, but there are two issues:[/color]
>
>
> The reason you did not get a satifactory response is that most feel that
> what your are attempting is a 'bad idea'. But in the matter of JavaScript
> (which must be enabled for the form to work, the other bad idea) you have
> some obvious errors which I will show to you, educational and all.[color=green]
>>
>> 1) There is an error in the script. Being a Javascript newbie, I've no
>> idea what the problem is.
>>
>> 2) I don't know how to re-program the script so that it opens up a url
>> depending on the choices made.
>>
>> Here is the code (thanks Google!), I'd appreciate any help the you can
>> give.
>>
>>
>>
>> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">[/color]
>
> Ugh, please look up doctype. This is ancient.[color=green]
>> <HTML>
>> <HEAD>
>> <TITLE>Dynamic Dropdown Boxes</TITLE>
>> <META NAME="Generator" CONTENT="TextPad 3.0">
>> <META NAME="Author" CONTENT="Heidi Housten">
>> </HEAD>
>>
>>
>> <style>
>> body,table,td {font-family:verdana; font-size:9pt}
>> select {width:130;font-family:verdana}
>> pre { font-size:9pt }
>> </style>
>>
>>
>>
>>[/color]
>
> Next although ending JavaScript statements with a ';' is optional I
> recommend it because is prevents errors when a single statement spans more
> than on line. Also your can gang more than one statement on a single line:
> var aOpt=new Array; var oMine=new Object;
>[color=green]
>>
>> <script language=javascript>
>> <!--
>> mainOpt = new Array()
>> subOpt = new Array()
>> mainOpt[0] = "How to relax"
>> subOpt [0] = new Array("","","")
>> mainOpt[1] = "Hot Spots"
>> subOpt [1] = new Array("Pick a Hot Spot","Mojave","Mars","Death
>> Valley","Mt. St. Helens")
>> mainOpt[2] = "Festivals"
>> subOpt [2] = new Array("Which One?","Mardi Gras","Cinco de
>> Mayo","Midsummer","Kite Festival")
>> mainOpt[3] = "Good Books"
>> subOpt [3] = new Array("Which Book?","N is for Noose","Four to
>> Score","A Grave Talent","Six of One")
>> mainOpt[4] = "Holidays"
>> subOpt [4] = new Array("Choose
>> Holiday","Cruises","Safaris","Ballooning","Adventu res")
>> function init()
>> {
>>
>> fillCombo(document.forms.myMenus.mainMenu,mainOpt)
>> fillCombo(document.forms.myMenus.mainBox,mainOpt)[/color]
> Incorrect here-------------------------^^------^^^
> should be:
>
> fillCombo(document.forms.myMenus.subMenu,subOpt[0]);
>
> to fill the second SELECT "subMenu" with the 1st array "subOpt[0]" upon
> initialization.
>
>[color=green]
>> }
>>
>> function fillCombo(cmbBox,aryMenu)
>> {
>> cmbBox.length = 0 // Clear out the current options
>> for (menuOpt in aryMenu)
>> {
>> cmbBox.options[cmbBox.length] = new
>> Option(aryMenu[menuOpt],cmbBox.length)
>> }
>> //Show first item if it is a drop down
>> cmbBox.selectedIndex=0
>> }
>> //-->
>> </script>
>>
>> <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#FF0000" onload="init()">
>> <center>
>> <form name=myMenus>
>> <br>an example<br><br>
>> <!-- do select template for older browsers, some
>> can't change size dynamically -->
>> <select name=mainMenu
>> onchange="fillCombo(subMenu,subOpt[this.selectedIndex])">[/color]
> -------------------------^^^
> should pass the complete reference to the SELECT object:
>
> onchange="fillCombo(this.form.subMenu, subOpt[this.selectedIndex]);
>
>
>[color=green]
>> <option>
>> <option>
>> <option>
>> <option>
>> <option>
>> <option>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
>> </select><br><br>
>> <select name=subMenu>
>> <option>
>> <option>
>> <option>
>> <option>
>> <option>
>> <option>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;
>> </select>
>> <br>
>> </form>
>> </center>
>> </BODY>
>> </HTML>
>>[/color]
>
> Probably more but that is what I found on quick examination.
>[/color]
<snip>
Cheers Jonathan, I'll take a look when I get back in the office.
--
Neil


  #6  
Old February 21st, 2006, 09:15 PM
Beauregard T. Shagnasty
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

Neil Monk wrote:
[color=blue]
> Thanks for your comments. Again, this is not relevent to my project.
> If this was for a "proper" website (as in to go on the WWW, and be
> used cross-browser, then yes, I'd agree).[/color]

I did not notice in your original post where you said this was not a WWW
page. We normally assume WWW unless you state otherwise, such as "this
is for an intranet" and maybe even "all my users are slaves to IE." Or
similar.
[color=blue]
> Thanks for your comments.[/color]

Hopefully, every user of your intranet has perfect vision? :-)

--
-bts
-Warning: I brake for lawn deer
  #7  
Old February 21st, 2006, 09:55 PM
Neil Monk
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

Beauregard T. Shagnasty wrote:[color=blue]
> Neil Monk wrote:
>[color=green]
>> Thanks for your comments. Again, this is not relevent to my project.
>> If this was for a "proper" website (as in to go on the WWW, and be
>> used cross-browser, then yes, I'd agree).[/color]
>
> I did not notice in your original post where you said this was not a
> WWW page. We normally assume WWW unless you state otherwise, such as
> "this is for an intranet" and maybe even "all my users are slaves to
> IE." Or similar.
>[/color]

Unfortunatley they are all slaves to IE, only I have FF installed.
[color=blue][color=green]
>> Thanks for your comments.[/color]
>
> Hopefully, every user of your intranet has perfect vision? :-)[/color]


That is correct, well, not all of the hundreds of thousands of people in my
company, but the 10-15 people that would be using this, yes they have..
--
Neil


  #8  
Old February 22nd, 2006, 09:15 AM
firstcustomer@gmail.com
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

Cheers Jonathan.

How do I get it to go to a url now? Can you help me with that too
please?

TIA, Neil.

  #9  
Old February 22nd, 2006, 11:45 PM
Jonathan N. Little
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

firstcustomer@gmail.com wrote:
[color=blue]
> Cheers Jonathan.
>
> How do I get it to go to a url now? Can you help me with that too
> please?
>
> TIA, Neil.
>[/color]
Please quote what you are referring to.

To do that you will need a third synchronized array of URLs for your
subOpt array where upon what is selected with subMenu you could set the
document's location to that URL.

Google 'javascript location object'

--
Take care,

Jonathan
-------------------
LITTLE WORKS STUDIO
http://www.LittleWorksStudio.com
  #10  
Old February 23rd, 2006, 10:25 AM
firstcustomer@gmail.com
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...


Jonathan N. Little wrote:[color=blue]
> firstcustomer@gmail.com wrote:
>[color=green]
> > Cheers Jonathan.
> >
> > How do I get it to go to a url now? Can you help me with that too
> > please?
> >
> > TIA, Neil.
> >[/color]
> Please quote what you are referring to.
>
> To do that you will need a third synchronized array of URLs for your
> subOpt array where upon what is selected with subMenu you could set the
> document's location to that URL.
>
> Google 'javascript location object'
>
> --
> Take care,
>
> Jonathan
> -------------------
> LITTLE WORKS STUDIO
> http://www.LittleWorksStudio.com[/color]


Sorry, I was using the wrong option (I use USENET via Google Groyups
when I'm at work).

I'll have a look at what you've said.
--
Cheers, Neil

  #11  
Old February 23rd, 2006, 02:05 PM
Jonathan N. Little
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

firstcustomer@gmail.com wrote:
[color=blue]
> Jonathan N. Little wrote:[/color]
<snip>[color=blue][color=green]
>>Please quote what you are referring to.[/color][/color]
<snip>[color=blue]
> Sorry, I was using the wrong option (I use USENET via Google Groyups
> when I'm at work).[/color]

I don't use GG but I know from all the complaints that there is a
setting to do proper quoting. I think Blinky has a reference to it on
his site:

http://blinkynet.net/comp/uip5.html
The Usenet Improvement Project - Blinkynet

--
Take care,

Jonathan
-------------------
LITTLE WORKS STUDIO
http://www.LittleWorksStudio.com
  #12  
Old February 23rd, 2006, 02:05 PM
firstcustomer@gmail.com
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...


Jonathan N. Little wrote:[color=blue]
> firstcustomer@gmail.com wrote:
>[color=green]
> > Jonathan N. Little wrote:[/color]
> <snip>[color=green][color=darkred]
> >>Please quote what you are referring to.[/color][/color]
> <snip>[color=green]
> > Sorry, I was using the wrong option (I use USENET via Google Groyups
> > when I'm at work).[/color]
>
> I don't use GG but I know from all the complaints that there is a
> setting to do proper quoting. I think Blinky has a reference to it on
> his site:
>
> http://blinkynet.net/comp/uip5.html
> The Usenet Improvement Project - Blinkynet
>
> --
> Take care,
>
> Jonathan
> -------------------
> LITTLE WORKS STUDIO
> http://www.LittleWorksStudio.com[/color]

There is indeed. I've found it now!

Still not got it (my form) work, I know next to nothing about
Javascript hence my problems. I've googled like you suggested, but I
can't find an example of what I need.
--
Neil

  #13  
Old February 23rd, 2006, 03:35 PM
Jonathan N. Little
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

firstcustomer@gmail.com wrote:
<snip>[color=blue]
>
> Still not got it (my form) work, I know next to nothing about
> Javascript hence my problems. I've googled like you suggested, but I
> can't find an example of what I need.[/color]

Aw c'mon Neil! The first results page in Google for the three search
words 'javascript location object' all yielded valid pages on how to use
the location object. You have do a little work for yourself ;-)

--
Take care,

Jonathan
-------------------
LITTLE WORKS STUDIO
http://www.LittleWorksStudio.com
  #14  
Old February 24th, 2006, 09:15 AM
firstcustomer@gmail.com
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...


Jonathan N. Little wrote:[color=blue]
> firstcustomer@gmail.com wrote:
> <snip>[color=green]
> >
> > Still not got it (my form) work, I know next to nothing about
> > Javascript hence my problems. I've googled like you suggested, but I
> > can't find an example of what I need.[/color]
>
> Aw c'mon Neil! The first results page in Google for the three search
> words 'javascript location object' all yielded valid pages on how to use
> the location object. You have do a little work for yourself ;-)
>[/color]
The only problem Jonathan, is that I know next to nothing about
Javascript, so the pages that I found mean nothing to me...
--
Neil

  #15  
Old February 24th, 2006, 09:55 AM
Jonathan N. Little
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

firstcustomer@gmail.com wrote:[color=blue]
> Jonathan N. Little wrote:
>[color=green]
>>firstcustomer@gmail.com wrote:
>><snip>
>>[color=darkred]
>>>Still not got it (my form) work, I know next to nothing about
>>>Javascript hence my problems. I've googled like you suggested, but I
>>>can't find an example of what I need.[/color]
>>
>>Aw c'mon Neil! The first results page in Google for the three search
>>words 'javascript location object' all yielded valid pages on how to use
>>the location object. You have do a little work for yourself ;-)
>>[/color]
>
> The only problem Jonathan, is that I know next to nothing about
> Javascript, so the pages that I found mean nothing to me...[/color]

http://www.google.com/search?hl=en&q...=Google+Search

--
Take care,

Jonathan
-------------------
LITTLE WORKS STUDIO
http://www.LittleWorksStudio.com
  #16  
Old February 26th, 2006, 06:25 PM
Jim Higson
Guest
 
Posts: n/a
Default Re: dynamic drop down menu (part 2)...

Jonathan N. Little wrote:
[color=blue]
> firstcustomer@gmail.com wrote:[color=green]
>> Jonathan N. Little wrote:
>>[color=darkred]
>>>firstcustomer@gmail.com wrote:
>>><snip>
>>>
>>>>Still not got it (my form) work, I know next to nothing about
>>>>Javascript hence my problems. I've googled like you suggested, but I
>>>>can't find an example of what I need.
>>>
>>>Aw c'mon Neil! The first results page in Google for the three search
>>>words 'javascript location object' all yielded valid pages on how to use
>>>the location object. You have do a little work for yourself ;-)
>>>[/color]
>>
>> The only problem Jonathan, is that I know next to nothing about
>> Javascript, so the pages that I found mean nothing to me...[/color]
>
>[/color]
http://www.google.com/search?hl=en&q...=Google+Search[color=blue]
>[/color]

Or, even:

javascript:location.replace("http://www.google.com/search?q=javascript+tutorial")

If you are using a Javascript-enabled browser to read this, and the portal
you're reading on linkifies all URLs (not just the http ones), clicking
that *may* just work.

If not, well, that shows the problems with using javascript for core
functionality.

--
Jim
 

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

What is Bytes?

We are a network of experts and professionals in IT and software development that help one another with answers to tough questions and share insights. Get the best answers to your questions from over network members.
Post your question now . . .
It's fast and it's free

Popular Articles