javascript - 比较选择框时序

标签 javascript jquery

<select id="ddlMinExp">
           <option value="0">hour</option>
           <option value="1">1</option>
           <option value="2">2</option>
            <option value="3">3</option>
         <option value="4">4</option>
          <option value="5">5</option>
</select>
<select id="mints1">
          <option value="">minuts</option>
          <option value="00">00</option>
          <option value="30">30</option>
</select>
<select id="ddlMaxExp" class="slct">
         <option value="0">hour</option>
</select>
<select id="mints">
         <option value="">minuts</option>
         <option value="00">00</option>
         <option value="30">30</option>
</select>

JS:

<script>
    $(function() {
        $('#ddlMinExp').change(function() {
            //var selectedMaxValue = Number($(this).val());
            var selectedMinValue = Number($('#ddlMinExp').val());

            // alert(selectedMinValue);
            if (selectedMinValue < 12) {
                //alert(selectedMinValue);
                $(".slct option").remove();
                for (i = selectedMinValue; i < 12; i++) {
                    $('select.slct').append('<option value="' + i + '"' + '>' + i + '</option>');
                    //alert(i);
                }
            }

            $('body').on('change', '#mints1', function() {
                var mints = Number($(this).val());
                if (mints === 30) {
                    $(".slct option").remove();
                    var j = selectedMinValue + 1;
                    for (j; j < 12; j++) {
                        $('select.slct').append('<option value="' + j + '"' + '>' + j + '</option>');
                        //alert(i);
                    }
                } else {
                    $(".slct option").remove();
                    for (i = selectedMinValue; i < 12; i++) {
                        $('select.slct').append('<option value="' + i + '"' + '>' + i + '</option>');
                        //alert(i);
                    }
                }
            });
        });
    })
</script>

如果从第一个选择框4自动选择第三个选择框从4开始,但是即使我从第二个选择框选择30第三个选择框也应该从5开始,第一次它工作,第二次如果我从第一个选择框选择3选择框 第三个选择框应该从 4 开始,因为第二个选择框的值为 30,当我更改第一个和第二个选择框时,第三个选择框必须更改 see fiddle link

最佳答案

更新了您的 fiddle ,请在此处查看 https://jsfiddle.net/ka56qw6t/7/

我在 $('#ddlMinExp').change(function() 中添加了一个条件来检查 'mints1' 的值,如果为 30,则将 'ddlMaxExp' 加 1 .

关于javascript - 比较选择框时序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38660097/

相关文章:

javascript - 是否可以将多个输入字段值存储在一个 session 存储中并使用 session 存储在第二页中检索?

javascript - 如何检查图像是否加载?

jquery - 谁能告诉我这个悬停效果是什么?

javascript - 如何使用 Javascript Promise 在循环中按顺序执行 AJAX 调用

javascript - 插入 JSON 突然不起作用

javascript - 如何用JavaScript控制多个音频播放器?

javascript - 在设计登录后使用 remote => true/Controller Action 继续表单发布

javascript - 从 Rails 中的 javascript 选项获取值

javascript - 在 javascript 中查询 json 对象/数组的最佳方法是什么?

javascript - Node js 数组仪表板