109

私は次のようなBootstrap-Selectプラグインを使用しています:

HTML

<select name="selValue" class="selectpicker">
   <option value="1">Val 1</option>
   <option value="2">Val 2</option>
   <option value="3">Val 3</option>
   <option value="4">Val 4</option>
</select>

Javascript

$('select[name=selValue]').selectpicker();

ここで、ボタンがクリックされたときに選択された値をこの選択に設定したいと思います...次のようになります。

$('#mybutton').click(function(){
   $('select[name=selValue]').val(1);
});

しかし、何も起こりません。

どうすればこれを達成できますか?

4

19 に答える 19

172

値は正しく選択されていますが、プラグインが実際の選択を非表示にし、順序付けられていないリストを含むボタンを表示するため、表示されませんでした。したがって、ユーザーに選択で選択された値を表示させたい場合は、次のようにすることができます。 :

//Get the text using the value of select
var text = $("select[name=selValue] option[value='1']").text();
//We need to show the text inside the span that the plugin show
$('.bootstrap-select .filter-option').text(text);
//Check the selected attribute for the real select
$('select[name=selValue]').val(1);

編集:

@blushrtが指摘しているように、より良い解決策は次のとおりです。

$('select[name=selValue]').val(1);
$('.selectpicker').selectpicker('refresh')

編集2:

複数の値を選択するには、値を配列として渡します。

于 2013-02-11T00:53:26.777 に答える
82
$('select[name=selValue]').val(1);
$('.selectpicker').selectpicker('refresh');

これがあなたがする必要があるすべてです。selectpickerの生成されたhtmlを直接変更する必要はありません。非表示の選択フィールドを変更してから、selectpicker('refresh')を呼び出すだけです。

于 2013-12-04T15:45:31.657 に答える
48
$('.selectpicker').selectpicker('val', YOUR_VALUE);
于 2015-10-12T22:35:17.800 に答える
17

「val」パラメータを使用して値を設定する場合は、更新は必要ありません。fiddleを参照してください。値に角かっこを使用して、選択した複数の値を有効にします。

$('.selectpicker').selectpicker('val', [1]); 
于 2016-01-18T09:48:20.803 に答える
11
$('#mybutton').click(function(){
   $('select[name=selValue]').val(1);
   $('select[name=selValue]').change();
});

これは私のために働いた。

于 2013-05-21T07:06:22.827 に答える
9

実際には値が設定されていますが、selectpickerは更新されません

ドキュメントから読むことができるように
https://silviomoreto.github.io/bootstrap-select/methods/#selectpickerval

これを行う正しい方法は

$('.selectpicker').selectpicker('val', 1);

複数の値の場合、値の配列を追加できます

$('.selectpicker').selectpicker('val', [1 , 2]);
于 2016-12-01T15:37:51.687 に答える
5

要素でvalメソッドを呼び出すことにより、選択した値を設定できます。

$('.selectpicker').selectpicker('val', 'Mustard');
$('.selectpicker').selectpicker('val', ['Mustard','Relish']);

これにより、複数選択のすべてのアイテムが選択されます。

$('.selectpicker').selectpicker('selectAll');

詳細はサイトで入手できます:https ://silviomoreto.github.io/bootstrap-select/methods/

于 2018-07-28T06:10:33.437 に答える
5

$('selector').selectpicker('val',value);

セレクターの代わりに、次のようにクラスまたはIDのいずれかのセレクターを指定できます。$('#mySelect').selectpicker('val',your_value)

于 2020-06-23T09:27:14.597 に答える
3
$('.selectpicker').selectpicker("val", "value");
于 2019-09-07T00:15:05.100 に答える
2

オプション(つまり、1、2、3、4など)の「ハードコードされた」値がない場合のblushrtの回答のわずかなバリエーション

<select>一部のユーザーのGUIDであるオプション値を使用してレンダリングするとします。次に、オプションをに設定するために、オプションの値を何らかの方法で抽出する必要があります<select>

以下では、selectの最初のオプションを選択します。

HTML

<select name="selValue" class="selectpicker">
   <option value="CD23E546-9BD8-40FD-BD9A-3E2CBAD81A39">Dennis</option>
   <option value="4DDCC643-0DE2-4B78-8393-33A716E3AFF4">Robert</option>
   <option value="D3017807-86E2-4E56-9F28-961202FFF095">George</option>
   <option value="991C2782-971E-41F8-B532-32E005F6A349">Ivanhoe</option>
</select>

Javascript

// Initialize the select picker.
$('select[name=selValue]').selectpicker();

// Extract the value of the first option.
var sVal = $('select[name=selValue] option:first').val();

// Set the "selected" value of the <select>.
$('select[name=selValue]').val(sVal);

// Force a refresh.
$('select[name=selValue]').selectpicker('refresh');

これを複数のキーワードを使用した選択で使用しました<select multiple>。この場合、デフォルトでは何も選択されていませんが、最初のアイテムが常に選択されるようにしました。

于 2015-04-29T18:25:05.380 に答える
2
var bar= $(#foo).find("option:selected").val();
于 2016-04-29T04:41:40.633 に答える
2

@blushrtのすばらしい回答に基づいて、この応答を更新します。使用するだけ-

$("#Select_ID").val(id);

必要なものすべてをセレクターにプリロードしている場合に機能します。

于 2019-05-04T12:08:06.230 に答える
1

また、これを複数の値と呼ぶこともできます

$(<your select picker>).selectpicker("val", ["value1", "value2"])

詳細については、https://developer.snapappointments.com/bootstrap-select/methods/をご覧ください。

于 2019-02-10T15:21:44.987 に答える
1
$('.selectpicker option:selected').val();

ブートストラップselectpickerがに変わり、異なる方法で表示されるため、option:selectedを入力して値を取得します。しかし、まだそこに選択されたものを選択してください

于 2019-06-21T06:38:38.693 に答える
1

Bootstrap Selectpicke rを使用する場合は、これを使用して、選択したオプションの値を取得する必要があります。

$('#membershipadmin').selectpicker("option:selected").val();
于 2022-03-04T06:54:18.987 に答える
0
$('.selectpicker').selectpicker('val', '0');

「0」は選択したいアイテムの値です

于 2017-12-18T04:15:34.537 に答える
0

これを行うもう1つの方法は、このキーワードを使用して、この中のオブジェクトを取得し、その値を操作することです。例:

$("select[name=selValue]").click(
    function() {
        $(this).val(1);
    });
于 2018-05-08T06:29:20.200 に答える
-1

要素のユーザーID、次に

document.getElementById('selValue').value=Your Value;
$('#selValue').selectpicker('refresh');
于 2016-05-07T10:17:37.320 に答える
-3

これを使用すると、機能します。

 $('select[name=selValue]').selectpicker('val', 1);
于 2013-10-18T16:02:46.367 に答える