Javascript jquery将选择选项替换为值关联数组

Javascript jquery将选择选项替换为值关联数组,javascript,jquery,Javascript,Jquery,我想根据select1中的选项更改select2的选项。因此,我制作了如下关联数组: var rubrieken = {'1': '<option value="10">Rubriek 10</option><option value="20">Rubriek 20</option>','2': '<option value="30">Rubriek 30</option><option value="40">R

我想根据select1中的选项更改select2的选项。因此,我制作了如下关联数组:

var rubrieken = {'1': '<option value="10">Rubriek 10</option><option value="20">Rubriek 20</option>','2': '<option value="30">Rubriek 30</option><option value="40">Rubriek 40</option>'};
因此,如果选择了select1选项2,则select2的当前值必须替换为键为2的选项。Im在下面创建了Jquery,但是如何从数组中提取选项并将它们放入select中呢

var rubrieken = {'1': '<option value="10">Rubriek 10</option><option value="20">Rubriek 20</option>','2': '<option value="30">Rubriek 30</option><option value="40">Rubriek 40</option>'};
$( document ).ready(function() {
    //Bij keuze categorie de rubrieken vullen 
    $("#select1").change(function(){
        //maak de huidige select leeg
        $('#select2').empty();
        //selectie uit array van juiste waarden
        $newoptions = "<option>NewO1</option><option>NewO1</option>";
        //vul de select rubriek op basis van categorie keuze    
        $('select#select2').html($newoptions);
    }); 
});

您可以作为键值对访问相应的选项。如果选择了选项1,则您可以像rubrieken[1]一样访问它

请试试这个

注:

您不需要$'select2'。为空;因为.html将替换内容


祝你好运

select1选项中的值是什么。是否为1和2?是否还会注释html?为什么不在数组中使用数字?javascript对象类型的用途与普通数组略有不同,对象的键通常是字符串/名称。但如果您只需要普通数组,您可以定义为简单的:var rubrieken=['Rubriek 10Rubriek 20','Rubriek 30Rubriek 40'];但它将从0开始索引。@JilcoTigchelaar但别担心,即使您像代码一样将rubrieken定义为对象,您也可以使用普通数组读取rubrieken[2];但不是鲁布里肯;通常情况下,对象读取使用dot,例如rubrieken.opt2@吉尔:很高兴这对你有帮助。接受它作为答案
var rubrieken = {'1': '<option value="10">Rubriek 10</option><option value="20">Rubriek 20</option>','2': '<option value="30">Rubriek 30</option><option value="40">Rubriek 40</option>'};
    $( document ).ready(function() {
        //Bij keuze categorie de rubrieken vullen 
        $("#select1").change(function(){
            //maak de huidige select leeg
            $('#select2').empty();
            var selectedValue = $(this).val();
            if(selectedValue){
                var getOptions = rubrieken[selectedValue];
                $('select#select2').html(getOptions);
            }
        }); 
    });
var rubrieken = {
    '1': '<option value="10">Rubriek 10</option><option value="20">Rubriek 20</option>',
    '2': '<option value="30">Rubriek 30</option><option value="40">Rubriek 40</option>'
};

$(function() {
    $("#select1").change(function() {
        var key = $(this).val();
        var newoptions = rubrieken[key];
        $('#select2').html(newoptions);
    }); 
});