根据变更事件填充选择下拉列表

时间:2013-11-04 11:14:01

标签: javascript jquery

嗨,我差点完成了填充选择下拉菜单然后输出相关数字的小任务。选择公司等工作。

这是我的JSFiddle:http://jsfiddle.net/3MK3D/1/

我现在需要在选择下拉列表中生成相应的公司,具体取决于选择了哪个扇区。我为个人公司创建了一个新的javascript数组。

我想过可能会做这样的事情并将正确的变量传递给适当的函数但不确定如何实现它:

var companiesArray;

    $('#sector').on('change', function(e){
        var optionSelected = $("option:selected", this);
        var sectorSelected = this.value;
        if( sectorSelected == 'business' ) {
            companiesArray = 'insurancecompanies';

        } else if( sectorSelected == 'personal' ) {
            companiesArray = 'personalcompanies';

        } else {

        }
    });

可能有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

使用companies选择值的sector对象作为相关数组的键:

var companies = {
    business : [
        { 
            name : 'Advent', 
            property : '01242 674 674', 
            fleet : '', 
            motortrade : ''
        },
        {   
            name : 'Allianz', 
            property : '0844 412 9988', 
            fleet : '0800 587 5858', 
            motortrade : '' 
        },
        // other insurance companies
    ],
    personal : [
        // personal companies
    ]
}

然后:

$('#sector').on('change', function(e){
    var optionSelected = $("option:selected", this);
    var sectorSelected = this.value;
    var companyArray = companies[sectorSelected];
    // iterate over companyArray and create the relevant option objects for #company
});