Javascript 如何级联jQuery移动组合框

Javascript 如何级联jQuery移动组合框,javascript,jquery,html,jquery-mobile,Javascript,Jquery,Html,Jquery Mobile,我开发了一个层叠选择菜单,用于更新具有相同值的组合框 我无法更新多个组合框。例如,我成功地将父组合框级联到其子组合框(a)。但是我希望孩子(b)等动态更新 我想到的解决方案是为3个组合框创建单独的函数,每当其中任何一个被更改时,它都会更新。当然,每个父对象都有自己的子对象(匹配值),因此更改子组合框不会影响父对象 下面是我写的:(请将其加载到JSFIDLE中的JQuery mobile中-左侧) 有没有一种方法可以级联多个组合框(不仅仅是前两个)?您可以在更新子组合后在其上触发更改事件,以便更新

我开发了一个层叠选择菜单,用于更新具有相同值的组合框

我无法更新多个组合框。例如,我成功地将父组合框级联到其子组合框(a)。但是我希望孩子(b)等动态更新

我想到的解决方案是为3个组合框创建单独的函数,每当其中任何一个被更改时,它都会更新。当然,每个父对象都有自己的子对象(匹配值),因此更改子组合框不会影响父对象

下面是我写的:(请将其加载到JSFIDLE中的JQuery mobile中-左侧)


有没有一种方法可以级联多个组合框(不仅仅是前两个)?

您可以在更新子组合后在其上触发更改事件,以便更新第三个组合

$("#select-choice-1").change(function () {
    $("#select-choice-2").append(storeBuildingList);
    var current_site = $(this).val();
    $("#select-choice-2>option").each(function () {
        if (current_site !== $(this).val()) {
            $(this).remove();
            $("#select-choice-2").selectmenu("refresh");
        }
    });
    //trigger change
    $("#select-choice-2").change();
});
更新


非常感谢你!我不知道你能用这样的变换函数。我一直认为你必须申报里面的东西才能让它工作。学到了一些新的东西:)同样地,你能用其他函数来实现这一点吗?就像click,keyup?@Newtonic,它只是trigger()的简写:。所以,是的,你可以触发任何事件。这在Android设备上运行良好,但只有下一个孩子在iPhone上更新。我注意到iPhone使用滚动选择,而不是像Android那样的可点击选项。您知道解决此问题的方法吗?再次感谢。@Newtonic,你是说更改事件不会在iOS上启动吗?谢谢你的回复。我修改了代码,意识到是速度因素导致代码无法正确执行。现在它运行良好。再次感谢。
$("#select-choice-1").change(function () {
    $("#select-choice-2").append(storeBuildingList);
    var current_site = $(this).val();
    $("#select-choice-2>option").each(function () {
        if (current_site !== $(this).val()) {
            $(this).remove();
            $("#select-choice-2").selectmenu("refresh");
        }
    });
    //trigger change
    $("#select-choice-2").change();
});