Bootstrap wybierz listę rozwijaną symbol zastępczy

Próbuję stworzyć listę rozwijaną, która zawiera symbol zastępczy. Wydaje się, że nie obsługuje placeholder="stuff" jak inne formularze. Czy istnieje inny sposób na uzyskanie elementu zastępczego w rozwijanym menu?

Author: Jordan.J.D, 2014-04-03

15 answers

Tak tylko "wybrane wyłączone" w opcji.

<select>
    <option value="" selected disabled>Please select</option>
    <option value="">A</option>
    <option value="">B</option>
    <option value="">C</option>
</select>

Link do fiddle

Odpowiedź można również zobaczyć na stronie

Https://stackoverflow.com/a/5859221/1225125

 163
Author: Brakke,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:48

Użyj ukrytego:

<select>
    <option hidden >Display but don't show in list</option>
    <option> text 1 </option>
    <option> text 2 </option>
    <option> text 3 </option>
</select>
 34
Author: Jay Lin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-26 17:12:53

Rozwijane lub select nie ma elementu zastępczego, ponieważ HTML go nie obsługuje, ale możliwe jest utworzenie tego samego efektu, więc wygląda tak samo jak inne elementy zastępcze

    $('select').change(function() {
     if ($(this).children('option:first-child').is(':selected')) {
       $(this).addClass('placeholder');
     } else {
      $(this).removeClass('placeholder');
     }
    });
.placeholder{color: grey;}
select option:first-child{color: grey; display: none;}
select option{color: #555;} // bootstrap default color
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="form-control placeholder">
   <option value="">Your Placeholder Text</option>
   <option value="1">Text 1</option>
   <option value="2">Text 2</option>
   <option value="3">Text 3</option>
</select>

Jeśli chcesz zobaczyć pierwszą opcję na liście usuń właściwość display z css

 15
Author: NeoNe,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-08 17:08:14

Dodaj Ukryty atrybut:

<select>
    <option value="" selected disabled hidden>Please select</option>
    <option value="">A</option>
    <option value="">B</option>
    <option value="">C</option>
</select>
 3
Author: Mark van Lit,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-17 18:15:21

Spróbuj tego:

<select class="form-control" required>
<option value="" selected hidden>Select...</option>

Podczas stosowania required + value="" wtedy Użytkownik nie może go wybrać użycie hidden spowoduje ukrycie go z listy opcji, gdy użytkownik otworzy okno opcji

 3
Author: Bassem Shahin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-08 17:09:32

Jeśli inicjalizujesz pole select za pomocą javascript, można dodać następujący tekst, aby zastąpić domyślny tekst zastępczy

noneSelectedText: 'Insert Placeholder text'

Przykład: jeśli masz:

<select class='picker'></select>

W Twoim javascript inicjalizujesz selectpicker w ten sposób

$('.picker').selectpicker({noneSelectedText: 'Insert Placeholder text'});  
 3
Author: Chadillac,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-07 09:01:08

Try @ title = "rzeczy". U mnie zadziałało.

 1
Author: Gabriel Janson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-29 00:51:57

Wszystkie te opcje są.... improwizacje. Bootstrap oferuje już rozwiązanie tego problemu. Jeśli chcesz zmienić symbol zastępczy dla wszystkich rozwijanych elementów, możesz zmienić wartość

NoneSelectedText w pliku bootstrap.

Aby zmienić indywidualnie, możesz użyć parametru TITLE.

Przykład:

<div class="form-group">
          <label class="control-label col-xs-2" id="country">Continent:</label>
          <div class="col-xs-9">
            <select name="zones[]" class="selectpicker" title="All continents" id="zones" multiple >
              <option value="Africa">Africa</option>
              <option value="Asia">Asia</option>
              <option value="North America">America North</option>
              <option value="South America">America South</option>
              <option value="Antarctica">Antarctica</option>
              <option value="Australia">Australia</option>
              <option value="Europe">Europe</option>
            </select>
          </div>
        </div>
 1
Author: Tudor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-11 20:00:57

Większość opcji jest problematyczna dla multi-select. Umieść atrybut Title i utwórz pierwszą opcję jako data-hidden= "true"

<select class="selectpicker" title="Some placeholder text...">
    <option data-hidden="true"></option>
    <option>First</option>
    <option>Second</option>
</select>
 1
Author: VGranin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-31 14:56:14

Oto inny sposób, aby to zrobić

<select name="GROUPINGS[xxxxxx]" style="width: 60%;" required>
    <option value="">Choose Platform</option>
<option value="iOS">iOS</option>
    <option value="Android">Android</option>
    <option value="Windows">Windows</option>
</select>

" Wybierz platformę "staje się elementem zastępczym, a właściwość "required" zapewnia, że użytkownik musi wybrać jedną z opcji.

Bardzo przydatne, gdy nie chcesz używać nazw pól lub etykiet użytkownika.

 0
Author: Sandeep,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-09 14:49:05

Używając Bootstrap, to jest to, co możesz zrobić. Używając klasy "Text-hide", opcja wyłączona zostanie wyświetlona na początku, ale nie na liście.

<select class="form-control" >
  <option selected disabled class="text-hide">Title</option>
  <option>A</option>
  <option>B</option>
  <option>C</option>
</select>
 0
Author: Srijay,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-28 06:37:54

Bootstrap select posiada opcję noneSelectedText. Można go ustawić za pomocą atrybutu data-none-selected-text. Dokumentacja .

 0
Author: Oleg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-06 16:38:46

Dla .html strony

<select>
    <option value="" selected disabled>Please select</option>
    <option value="">A</option>
    <option value="">B</option>
    <option value="">C</option>
</select>

Dla .jsp lub jakiejkolwiek innej strony servleta.

<select>
    <option value="" selected="true" disabled="true">Please select</option>
    <option value="">A</option>
    <option value="">B</option>
    <option value="">C</option>
</select>
 0
Author: tk_,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-02 02:39:42
  1. in bootstrap-select.js Find title: null, and remove it.
  2. dodaj title="YOUR TEXT" w elemencie <select>.
  3. Świetnie:) [7]}

Przykład:

<select title="Please Choose one item">
    <option value="">A</option>
    <option value="">B</option>
    <option value="">C</option>
</select>
 0
Author: Amir Hossein Khateri,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-17 16:19:07

Myślę, że rozwijane pole z klasą i kodem JQuery, aby wyłączyć pierwszą opcję wyboru przez użytkownika, będzie działać idealnie jako Select Box placeholder.

<select class="selectboxclass">
   <option value="">- Please Select -</option>
   <option value="IN">India</option>
   <option value="US">America</option>
</select>

Make the first option disabled by JQuery.

<script>
$('select.selectboxclass option:first').attr('disabled', true);
</script>

Spowoduje to, że pierwsza opcja z listy rozwijanej będzie zastępcza, a użytkownik nie będzie już mógł wybrać pierwszej opcji.

Mam nadzieję, że to pomoże!!
 0
Author: Mahesh Yadav,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-06 10:11:40