Dynamic SELECT dropdown box

G

Ganco

We have a dropdown combobox, where some of the text is wider than the
textarea.
I cannot set the width of the SELECT any higher due to design
restrictions on the company website.

When clicking the dropdown box, I want the textarea (which unfolds
beneath the dropdown) to expand to the widest element of the options.
I can see that Netscape does this automatically, but how would you do
it in IE?

thanks beforehand
Greg
 
T

Thomas 'PointedEars' Lahn

Ganco said:
We have a dropdown combobox, where some of the text is wider than
the textarea.
I cannot set the width of the SELECT any higher due to design
restrictions on the company website.

What if CSS is disabled or not even supported? The design is definitely
borken.
When clicking the dropdown box, I want the textarea (which unfolds
beneath the dropdown)

When one writes about a textarea here, it is most certainly considered
a `textarea' (X)HTML element. In this regard, it is not a textarea
that unfolds but a list of options, because it is only displayed as a
dropdown box in *your* UA(s), it is in fact a `select' element of size 1.
to expand to the widest element of the options.
I can see that Netscape does this automatically,

IE (6.0) does it, too, unless you specify the width of the `select'
element with CSS.
but how would you do it in IE?

If you need the fixed width of the element there is no way to accomplish
that. Even if you could do that with JScript[tm] somehow, what if
script support is disabled? Even if you would use an ActiveX control
that allows that rather than the HTML element, what if ActiveX support
is disabled or not present (AFAIK all UAs but IE on Windows)? You
cannot fix design flaws in other ways (including JavaScript) reliably
instead of really *fixing* them.


PointedEars
 
G

Gregers A. H. Hovmand

Thanks alot for your help sofar, Thomas.

You are right: it is not a textarea, but a list of options which unfolds.

We have CSS enabled, however there are no specific attributes for the SELECT
apart from the one we are inlining (width=110px).

I have tried to take out the 'width' of the SELECT element, however to no
avail. The dropdown just expands to the widest element. This is not allowed
(we have a restriction of max 110px for a dropdown on that specific page).
We want the list of options to expand. Do you possibly have a code snip I
could look at, which does the trick?

We are not allowed to use ActiveX or anything similar, just JScript or
javascript.
When script is disabled, it is not a problem (we use complete different page
renedering logic)


Thomas 'PointedEars' Lahn said:
Ganco said:
We have a dropdown combobox, where some of the text is wider than
the textarea.
I cannot set the width of the SELECT any higher due to design
restrictions on the company website.

What if CSS is disabled or not even supported? The design is definitely
borken.
When clicking the dropdown box, I want the textarea (which unfolds
beneath the dropdown)

When one writes about a textarea here, it is most certainly considered
a `textarea' (X)HTML element. In this regard, it is not a textarea
that unfolds but a list of options, because it is only displayed as a
dropdown box in *your* UA(s), it is in fact a `select' element of size 1.
to expand to the widest element of the options.
I can see that Netscape does this automatically,

IE (6.0) does it, too, unless you specify the width of the `select'
element with CSS.
but how would you do it in IE?

If you need the fixed width of the element there is no way to accomplish
that. Even if you could do that with JScript[tm] somehow, what if
script support is disabled? Even if you would use an ActiveX control
that allows that rather than the HTML element, what if ActiveX support
is disabled or not present (AFAIK all UAs but IE on Windows)? You
cannot fix design flaws in other ways (including JavaScript) reliably
instead of really *fixing* them.


PointedEars
--
The last words of an *n*x admin:
# fsck /dev/hda8
/dev/hda8 ist already mounted. Destroy directory structure anyway?<y> yes
Please stand by...
 
T

Thomas 'PointedEars' Lahn

Gregers said:
I have tried to take out the 'width' of the SELECT element, however
to no avail. The dropdown just expands to the widest element. This is
not allowed (we have a restriction of max 110px for a dropdown on
that specific page).

That restriction ignores the basics of the used medium.
We want the list of options to expand. Do you possibly have a code
snip I could look at, which does the trick?

You cannot do that in other ways than I already suggested.
It is the user agent that renders the element, not CSS or
JavaScript. Complain to M$.
[Top post]

Please trim your quotes and place the answer *below* the "question".


PointedEars
 
G

Gregers A. H. Hovmand

That restriction ignores the basics of the used medium.

Do not understand this statement
You cannot do that in other ways than I already suggested.
It is the user agent that renders the element, not CSS or
JavaScript. Complain to M$.

It is actually the OS which renders this element, not the UA.
Don't understand your suggestion from your last post.
Checked in VB, and it is not possible to do this either.
Maybe one should write code to access the WinAPI to do this? who knows?
Please trim your quotes and place the answer *below* the "question".

OK

Greg
 
T

Thomas 'PointedEars' Lahn

Please include a short attribution line like the below one so one
can see who wrote what you are referring to, even if the posting
expired.

Gregers A. H. Hovmand wrote:

[Quote completed]
Thomas said:
Gregers said:
[...]
(we have a restriction of max 110px for a dropdown on
that specific page).

That restriction ignores the basics of the used medium.

Do not understand this statement

For one part, (X)HTML is a markup language, not a layout language.
CSS is not a layout language either, but a formatting language
which applies formatting rules to markup elements.

For another, display of a (X)HTML document depends on the client
hardware and its user agent software. Unless you can *guarantee*
that the document is displayed under design conditions, like you
possibly could if it were an intranet document, never ever assume
that the document is rendered that way.
It is actually the OS which renders this element, not the UA.

For IE that is most certainly true. For other UAs it is not, which is
part of your problem.
Don't understand your suggestion from your last post.

The suggestion was and is that you forget about it and do a complete
redesign instead because you cannot fix borken design with alternative
approaches reliably.
Checked in VB, and it is not possible to do this either.

Tough luck.
Maybe one should write code to access the WinAPI to do this?

Maybe, but that has nothing to do with JavaScript at all.


PointedEars
 

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,776
Messages
2,569,602
Members
45,182
Latest member
BettinaPol

Latest Threads

Top