第一个下拉菜单的值,是1,2,3,4,如果我选择1,那么第二个下拉菜单的值就是2,3,4,我继续在第二个下拉菜单选择2,那么第三个下拉菜单值就是3,4,了,请问怎么实现这个特效,谢谢了。

解决方案 »

  1.   

    <script>
        var max = 4;///////定义最大
        function addOption(sel, idx) {
            sel.options.length = 1;
            for (var i = idx; i <= max; i++) sel.options.add(new Option(i, i));
        }
        function change(sel) {
            var idx = parseInt(sel.id.replace('sel', ''));//
            for (var i = idx + 1; i <= 3; i++) {
                if (sel.value == '') addOption(document.getElementById('sel' + i), max + 1);
                else addOption(document.getElementById('sel' + i), parseInt(sel.value) + 1);
            }
        }
    </script>
    <select id="sel1" onchange="change(this)">
    <option value="">...</option>
    <script>
        for (var i = 1; i <= max; i++) document.write('<option value="' + i + '">' + i + '</option>');
    </script>
    </select>
    <select id="sel2" onchange="change(this)"><option value="">...</option></select>
    <select id="sel3"><option value="">...</option></select>