Jak wdrożyć subj?
kiedy piszę:
<form>
<select>
<option value="0">aaaa</option>
<option value="1">bbbb</option>
</select>
</form>
to domyślny wybrany element to „aaaa”
kiedy piszę:
<form>
<select>
<option value=""></option>
<option value="0">aaaa</option>
<option value="1">bbbb</option>
</select>
</form>
wtedy domyślnie wybrany element jest pusty, ale ten pusty element jest wyświetlany na liście rozwijanej.
jak mogę zaimplementować tag SELECT z domyślną pustą wartością ukrytą na liście rozwijanej?
html
select
drop-down-menu
Nick Stavrogin
źródło
źródło
Odpowiedzi:
Po prostu użyj atrybutów wyłączonych i / lub ukrytych:
selected
ustawia tę opcję jako domyślną.disabled
sprawia, że ta opcja jest niemożliwa do kliknięcia.style='display: none'
sprawia, że ta opcja nie jest wyświetlana w starszych przeglądarkach. Zobacz: Czy mogę użyć dokumentacji dla ukrytego atrybutu.hidden
sprawia, że ta opcja nie jest wyświetlana na liście rozwijanej.źródło
hidden
atrybut jest skutecznydisplay: none
, więc do obsługi starszych przeglądarek:<option selected disabled hidden style='display: none' value=''></option>
Można przez ustawienie
selectedIndex
do-1
korzystania.prop
: http://jsfiddle.net/R9auG/ .W przypadku starszych wersji jQuery
.attr
zamiast.prop
: http://jsfiddle.net/R9auG/71/ .źródło
.attr
nie powiedzie się w nowych wersjach jQuery. Próbując być mądrym, zawiodłem.Po prostu używając
będzie działać w dowolnym miejscu bez skryptu i umożliwi jednoczesne instruowanie użytkownika.
źródło
źródło
Oto prosty sposób na zrobienie tego przy użyciu zwykłego JavaScript. To jest waniliowy odpowiednik skryptu jQuery opublikowany przez pimvdb. Możesz to przetestować tutaj .
.
Upewnij się, że „id_here” pasuje w formularzu iw kodzie JavaScript.
źródło
Nie możesz. Po prostu nie działają w ten sposób. W menu rozwijanym musi być zawsze zaznaczona jedna ze swoich opcji.
Możesz (chociaż nie polecam tego) obserwować zdarzenie zmiany , a następnie użyć JS do usunięcia pierwszej opcji, jeśli jest pusta.
źródło
Dla czysto html @isherwood ma świetne rozwiązanie. W przypadku jQuery nadaj rozwijanej liście wyboru identyfikator, a następnie wybierz go z jQuery:
Następnie użyj tego jQuery, aby wyczyścić menu rozwijane podczas ładowania strony:
Lub umieść go w samej funkcji:
spełnia to, czego szukasz i łatwo jest to umieścić w funkcjach, które mogą zostać wywołane na Twojej stronie, jeśli chcesz wyczyścić menu bez ponownego ładowania strony.
źródło
Możesz spróbować tego fragmentu
U mnie to zadziałało.
źródło