WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   Disable en selectbox men behålla utseende? (https://www.wn.se/forum/showthread.php?t=1042893)

Ludwig 2010-07-12 13:31

Disable en selectbox men behålla utseende?
 
Hej!
Jag skulle vilja ha en selectbox på min sida som är disabled. Den ska dock inte se "grå" ut. Den ska fortfarande kunna reagera på events, mer bestämt när man klickar på den.

Jag använder jquery och det jag testat är:

1.
<select disabled ....

Resultat:
Den blir grå och reagear inte på klick.

2.
jQuery("#selectBoxId").click(function(event){
event.preventDefault();
})

Påverkar inte beteendet alls.

Någon som har något tips?

hnn 2010-07-12 14:59

readonly="readonly"?

Ludwig 2010-07-12 21:57

Nej det fungerar inte på select-boxar

allstars 2010-07-13 08:08

fast vilket event vill du inte ha med? Är det när man väljer en item ur listan är det väl inte click-eventet du skall använda!?

Westman 2010-07-13 08:28

Öhm, disabled men ska reagera på events? Då är den knappast disabled. Vad är det den gör om den inte är "disabled"?

Ludwig 2010-07-13 10:09

För att förtydliga:
När jag klickar på den så ska drop-downboxen inte fällas ner. Istället ska en annan javascriptfunktion som jag själv skrivit exekveras.

martine 2010-07-13 12:03

Citat:

Ursprungligen postat av Ludwig (Inlägg 20362366)
För att förtydliga:
När jag klickar på den så ska drop-downboxen inte fällas ner. Istället ska en annan javascriptfunktion som jag själv skrivit exekveras.

Det verkar lite galet ur ett användaperspektiv men det borde väl gå fint med preventDefault() på det event som du vill förhindra, t.ex. click.

Ludwig 2010-07-13 13:07

Citat:

Ursprungligen postat av martine (Inlägg 20362386)
Det verkar lite galet ur ett användaperspektiv men det borde väl gå fint med preventDefault() på det event som du vill förhindra, t.ex. click.

Indeed galet, men ibland vill kunden ha det som kunden vill ha det.
Men nej, peventDefault fungerade ej. Kolla mitt första inlägg för att se hur jag använt preventDefault och se om det är något jag gjort fel.

allstars 2010-07-13 14:27

Visa en bild på en lista istället och byt ut den mot riktiga listan när den skall användas.

Eller populera inte värden i listan tills det behövs.

martine 2010-07-13 18:09

Citat:

Ursprungligen postat av Ludwig (Inlägg 20362393)
Indeed galet, men ibland vill kunden ha det som kunden vill ha det.
Men nej, peventDefault fungerade ej. Kolla mitt första inlägg för att se hur jag använt preventDefault och se om det är något jag gjort fel.

Ofta vill kunden ha något som ska se ut på ett visst sätt som de fått för sig, vilket oftast betyder: jag vill ha det som jag är van att en select-box ser ut och mer sällan, jag vill att ha ett select-element i dom-strukturen till varje pris.

Men för all del, det går alltid att lösa med ett positionerat element ovanpå som tar emot eventet eller liknande... Men kom då inte och klaga när nästa version av IE kommer ut...

Själv gör jag alltid klart att även om det är möjligt så är det en dålig lösning men att det går utmärkt att få samma funktionalitet och utseende som efterfrågas men på ett rimligt sätt som i slutändan gynnar både kund och den som bygger sidan.


Alla tider är GMT +2. Klockan är nu 00:55.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson