spaces in select names

L

larry

Hi,

I am a newbie to Internet programming. I have some questions about
spacing in HTML control names and subsequently being able to access
these input elements in JavaScript If you don't have time to read the
whole message, the main question is can HTML form names have spaces in
them and if so what is the syntax for accessing them using Javascript

I have a Perl script which dynamically creates html and ultimately
generates a form. The form contains dynamically generated radio
buttons and select controls. The value of the radio value is the same
name as the select control name but this is only way I get the name of
the select controls because I know exactly how many radio buttons there
are and I know the radio button name. (if unclear disregard:not
crucial)

Many of the control names contain spaces. When I try to access them in
JavaScript through the DOM it doesn't work. Can I use spaces in input
control names.?

I have tried to save a Javascript value(which contains spaces) in a
variable and then use this variable in another Javascript statement.
For example;

selectedSG = document.Allan.SGGroup.value;
When I print selectedSG it returns the correct value.

But then when I try to use selectedSG in my JavaScript to access the a
select input it doesn't work:

document.Allan.selectedSG.length

I have tried to hard code the select control name and it works if the
select name has no spaces: for example

document.Allan.Fabric.length (where fabric is a select control name)
and then I receive the correct length for the specific select control

However if I try to hard code a select name that contains spaces it
doesn't work, ie.

document.Allan.another magnificent day.length

Clearly this syntax is wrong but I've tried bracketing and single
quotes around another magnificent day and it still doesn't work

Thanks ahead,
Larry
 
L

Lee

larry said:
Many of the control names contain spaces. When I try to access them in
JavaScript through the DOM it doesn't work. Can I use spaces in input
control names.?

It should be trivial for you to replace spaces with underscores,
which would make the names valid. You can access invalid names
though, as in:

document.Allan.elements["another magnificent day"].length
 
A

ASM

larry said:
Hi,

I am a newbie to Internet programming. I have some questions about
spacing in HTML control names and subsequently being able to access
these input elements in JavaScript If you don't have time to read the
whole message, the main question is can HTML form names have spaces in
them and if so what is the syntax for accessing them using Javascript

document.forms['My Own Form'].elements['My Prefered Select'];
The value of the radio value is the same
name as the select control name but this is only way I get the name of
the select controls because I know exactly how many radio buttons there
are and I know the radio button name. (if unclear disregard:not
crucial)

it is not at all a good idea to give same name to radios and selects
how can you cleanly submit your form ?
if not correct answer : not crucial :)
selectedSG = document.Allan.SGGroup.value;
When I print selectedSG it returns the correct value.

But then when I try to use selectedSG in my JavaScript to access the a
select input it doesn't work:

document.Allan.selectedSG.length


isn't it normal ?
you do exactly same as writting directly the spaced name ...

selectedSG = document.Allan.SGGroup.value;
alert('select length = '+document.Allan.elements[selectedSG].length);

as selectedSG is a variable, no need single quotes in brackets
However if I try to hard code a select name that contains spaces it
doesn't work, ie.

document.Allan.another magnificent day.length

alert('select length = ' +
document.Allan['another magnificent day'].length);
or
alert('select length = ' +
document.forms['Allan'].elements['another magnificent day'].length);
or
var A = document.forms['Allan'];
alert('select length = ' +
A.elements[A.elements['SGGroup'].value].length);
Clearly this syntax is wrong but I've tried bracketing and single
quotes around another magnificent day and it still doesn't work

something wrong with a not necessary point ... no ?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,766
Messages
2,569,569
Members
45,042
Latest member
icassiem

Latest Threads

Top