|
| Gøre en select readonly Fra : Allan Schuster Bach |
Dato : 19-08-03 12:47 |
|
Jeg har en række selectbokse, som jeg efter forskellige muligheder skal gøre
readonly/disabled, hved hjælp af javascript på siden
Problemmet er nu det, at javascript tilsyneladende ikke genkender readonly,
men kun disabled
eksempel
document.form.selectbok.disabled
disabler selecten, men overfør ikke værdien til min modtage side(helt som
forventet), hvor værdien skal benyttes
Men hvordan gøres det så?
Allan Bach
| |
Lasse Reichstein Nie~ (19-08-2003)
| Kommentar Fra : Lasse Reichstein Nie~ |
Dato : 19-08-03 16:15 |
|
"Allan Schuster Bach" <newskonto@schuster.dk> writes:
> Jeg har en række selectbokse, som jeg efter forskellige muligheder skal gøre
> readonly/disabled, hved hjælp af javascript på siden
> Problemmet er nu det, at javascript tilsyneladende ikke genkender readonly,
> men kun disabled
Man kan ikke indtaste noget i et select-element, så readOnly giver
ikke mening.
Man kan bruge det til input-elementer af typen text eller password,
eller til textarea-elementer, og der skrives det med stort O.
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL: http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'
| |
Martin Hintzmann And~ (20-08-2003)
| Kommentar Fra : Martin Hintzmann And~ |
Dato : 20-08-03 11:47 |
|
Allan Schuster Bach wrote:
> Jeg har en række selectbokse, som jeg efter forskellige muligheder skal gøre
> readonly/disabled, hved hjælp af javascript på siden
> Problemmet er nu det, at javascript tilsyneladende ikke genkender readonly,
> men kun disabled
>
> eksempel
>
> document.form.selectbok.disabled
>
> disabler selecten, men overfør ikke værdien til min modtage side(helt som
> forventet), hvor værdien skal benyttes
>
> Men hvordan gøres det så?
>
Du kan prøve med onfocus=this.blur() på dine selectbox'e eller du kan "høste" alle værdierne fra
selectbox'ene over i et hidden field og så hente dem derfra på serversiden.
Men ... du burde ikke lave en løsning, hvor man ikke kan submit'e formen uden at man benytter
javascript, så måske kan dit problem løses på anden måde.
- Så hvorfor skal select-box'ene være readonly ?
Hintzmann c",)
| |
Lasse Reichstein Nie~ (20-08-2003)
| Kommentar Fra : Lasse Reichstein Nie~ |
Dato : 20-08-03 12:06 |
|
Martin Hintzmann Andersen <no@spam.dk> writes:
> Du kan prøve med onfocus=this.blur() på dine selectbox'e
Det er farligt, da de generer folk der navigerer med keyboard. Prøv
at komme forbi det element med tab.
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL: http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'
| |
Martin Hintzmann And~ (20-08-2003)
| Kommentar Fra : Martin Hintzmann And~ |
Dato : 20-08-03 12:13 |
|
Lasse Reichstein Nielsen wrote:
>
>
> Det er farligt, da de generer folk der navigerer med keyboard. Prøv
> at komme forbi det element med tab.
>
Så sæt focus på det først ankomne felt der må skrives i.
onfocus = document.forms("formensnavn").elements("feltetsnavn").focus
Hintzmann c",)
| |
Lasse Reichstein Nie~ (20-08-2003)
| Kommentar Fra : Lasse Reichstein Nie~ |
Dato : 20-08-03 14:02 |
|
Martin Hintzmann Andersen <no@spam.dk> writes:
> Så sæt focus på det først ankomne felt der må skrives i.
>
> onfocus = document.forms("formensnavn").elements("feltetsnavn").focus
Smart træk. Dog er forms og elements generelt ikke funktioner (de er i
IE og Oper, men ikke i NS4 eller Mozilla), så man bør skrive
onfocus = document.forms["formensnavn"].elements["feltetsnavn"].focus
i stedet.
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL: http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'
| |
Martin Hintzmann And~ (21-08-2003)
| Kommentar Fra : Martin Hintzmann And~ |
Dato : 21-08-03 08:18 |
|
Lasse Reichstein Nielsen wrote:
> Smart træk. Dog er forms og elements generelt ikke funktioner (de er i
> IE og Oper, men ikke i NS4 eller Mozilla), så man bør skrive
> onfocus = document.forms["formensnavn"].elements["feltetsnavn"].focus
> i stedet.
Det er rigtigt, forms og elements er array's af object'er.
Og så er focus en methode, så der skal () efter - bla.bla.focus()
Jeg må have været træt. My bad
Hintzmann c",)
| |
Lasse Reichstein Nie~ (21-08-2003)
| Kommentar Fra : Lasse Reichstein Nie~ |
Dato : 21-08-03 17:09 |
|
Martin Hintzmann Andersen <no@spam.dk> writes:
> Det er rigtigt, forms og elements er array's af object'er.
De er faktisk "collections", ikke arrays. I praksis gør det ikke den
store forskel, da de har en "length"-egenskab og man kan indeksere dem
med heltal, men de har fx ikke de metoder der er i Array.prototype.
> Og så er focus en methode, så der skal () efter - bla.bla.focus()
Nej, den er god nok. Du sætter netop onfocus-event-handleren til focus-
funktionen for det næste element. Et smart trick.
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL: http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'
| |
Martin Hintzmann And~ (21-08-2003)
| Kommentar Fra : Martin Hintzmann And~ |
Dato : 21-08-03 21:58 |
|
Allan Schuster Bach wrote:
> document.form.selectbok.disabled
>
> disabler selecten, men overfør ikke værdien til min modtage side(helt som
> forventet), hvor værdien skal benyttes
>
> Men hvordan gøres det så?
Jeg er kommet på en ny måde du kan gøre det på.
Du disabler dine select-box'e, men ved eventen onsubmit på din form
enabler du alle select-box'ene, så du kan aflæse værdierne på serversiden.
document.forms["form"].elements["selectbok"].disabled = false;
Hintzmann c",)
| |
|
|