簡體   English   中英

如何使用SelectBoxIt jQuery插件觸發本機選擇框

[英]How to trigger the native select box using SelectBoxIt jquery plugin

我已經使用SelectBoxIt插件在我的應用程序中顯示選擇框。

我有兩個選擇框,如果我更改第一個選擇框的值,則另一個應該自動更新(它應該自動觸發)。

對於兩個選擇框值都是動態傳遞的,我在下面的代碼中使用了

$('.ember-select').selectBoxIt({
            theme: "default",
            autoWidth: false,
            triggerChangeCombined: true
        });

我用了

$('.ember-select').selectBoxIt({
            native: true
        });

它將觸發,但不會顯示slectbox的其他屬性,例如“ theme”,“ autoWidth”。

確定,您可以在下面查看此演示和代碼:

這是您的示例HTML

<div class='formArea'>
    <label>Mode:</label><br/>
    <select id="modes" name="modes">
        <option disabled selected>
            -- Choose a Mode --
         </option>
         <option>Vehicle</option>
         <option>Fleet</option>
         <option>Trailers</option>
     </select><br/>
    <label>Options:</label><br/>
    <select id="optionss" name="optionss">
        <option disabled selected>
            -- Options --
        </option>

     </select><br/>
</div>

以下是您的JS:

var vehicles = ['Vehicle 1', 'Vehicle 2', 'Vehicle 3', 'Vehicle 4', 'Vehicle 5']; //add all your vehicle options here
var fleet = ['fleet 1', 'fleet 2', 'fleet 3', 'fleet 4', 'fleet 5']; //add all your fleet options here
var trailers = ['trailer 1', 'trailer 2', 'trailer 3', 'trailer 4', 'trailer 5']; //add all your trailers options here

var optionss =  [{name: "Vehicles", clubs: vehicles},
                 {name: "Fleet", clubs: fleet},
                 {name: "Trailers", clubs: trailers}
                ];


$(function() {
    var selectedmode = $('#modes option:selected').text()
    var optionmenu = $('#optionss');
    for (var i = 0; i < optionss.length; i++) {
         if (selectedmode === optionss[i].name) {
              $.each(optionss, function(val, obj) {
                  optionmenu.append($('<option></option>').val(val).html(obj.clubs));
              });
         }
    }
});

$('#modes').on('change',function(){
    var mode=$(this).find(":selected").text();
    $('#optionss').find('option').remove();
    switch(mode)
    {
        case 'Vehicles':
            $.each(vehicles, function(key, value) {   
                    $('#optionss')
                    .append($("<option></option>")
                    .text(value)); 
            });
            break;

        case 'Fleet':
            $.each(fleet, function(key, value) {   
                    $('#optionss')
                    .append($("<option></option>")
                    .text(value)); 
            });
            break;
        case 'Trailers':
            $.each(trailers, function(key, value) {   
                    $('#optionss')
                    .append($("<option></option>")
                    .text(value)); 
            });
            break;
        default:break;        
      }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM