首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用SelectBoxIt jquery插件触发本机复选框

如何使用SelectBoxIt jquery插件触发本机复选框
EN

Stack Overflow用户
提问于 2015-05-06 10:26:39
回答 1查看 801关注 0票数 2

我已经使用SelectBoxIt插件来显示我的应用程序中的选择框。

我有两个复选框,如果我更改了第一个选择框中的值,另一个应该自动更新(它应该自动触发)。

对于这两个复选框值都是动态传递的,我使用了下面的代码

代码语言:javascript
复制
$('.ember-select').selectBoxIt({
            theme: "default",
            autoWidth: false,
            triggerChangeCombined: true
        });

我用

代码语言:javascript
复制
$('.ember-select').selectBoxIt({
            native: true
        });

它将触发,但slectbox其他属性,如“主题”,"autoWidth“没有呈现。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-08 08:26:25

好的,您可以检查这个演示和下面的代码:

下面是您的示例

代码语言:javascript
复制
<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:

代码语言:javascript
复制
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;        
      }
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30074093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档