Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery HTML-根据时间更改小时下拉列表_Jquery_Html_Drop Down Menu - Fatal编程技术网

Jquery HTML-根据时间更改小时下拉列表

Jquery HTML-根据时间更改小时下拉列表,jquery,html,drop-down-menu,Jquery,Html,Drop Down Menu,因此,我有两个下拉列表,如下所示: 第一个基于开始时间: <select class="form-control" type="time" name="starttime" id="starttime" value=""> <option value="" disabled selected hidden>Start time</option> <option value="00:10:00">10:00am</option&

因此,我有两个下拉列表,如下所示:

第一个基于开始时间:

<select class="form-control" type="time" name="starttime" id="starttime" value="">
    <option value="" disabled selected hidden>Start time</option>
    <option value="00:10:00">10:00am</option>
    <option value="00:11:00">11:00am</option>
    <option value="00:12:00">12:00pm</option>
    <option value="00:13:00">1:00pm</option>
    <option value="00:14:00">2:00pm</option>
    <option value="00:15:00">3:00pm</option>
    <option value="00:16:00">4:00pm</option>
    <option value="00:17:00">5:00pm</option>
    <option value="00:18:00">6:00pm</option>
</select>

开始时间
上午10:00
上午11:00
下午12:00
下午1:00
下午2:00
下午三点
下午四点
下午五点
下午六点
第二个基于从开始时间算起的小时数:

<select class="form-control" name="sessions.0.hours" id="hours" label="No. of Hours">
    <option value="" disabled selected hidden>Hours</option>
    <option value="4">4 hours</option>
    <option value="5">5 hours</option>
    <option value="6">6 hours</option>
    <option value="7">7 hours</option>
    <option value="8">8 hours</option>
    <option value="9">9 hours</option>
    <option value="10">10 hours</option>
    <option value="11">11 hours</option>
    <option value="12">12 hours</option>
</select>

小时
4小时
5小时
6小时
7小时
8小时
9小时
10小时
11小时
12小时
我希望第二个下拉列表根据选择的开始时间进行更改,以便开始时间后的小时数不会超过关闭时间(晚上10点)。示例:

  • 上午10点启动允许您选择从最小(4小时)到最大(12小时)的任意小时数

  • 下午4点开始允许您选择从最小(4小时)到6小时的小时数


    • 我希望这能对您有所帮助

      HTML

      
      开始时间
      上午10:00
      上午11:00
      下午12:00
      下午1:00
      下午2:00
      下午三点
      下午四点
      下午五点
      下午六点
      小时
      
      jsjquery

      function selectStartTime(val){
       switch(val){
        case "00:10:00":
         hoursAvailable(10);
         break;
        case "00:11:00":
         hoursAvailable(11);
         break;
        case "00:12:00":
         hoursAvailable(12);
         break;
        case "00:13:00":
         hoursAvailable(13);
         break;
        case "00:14:00":
         hoursAvailable(14);
         break;
         case "00:15:00":
         hoursAvailable(15);
         break;
         case "00:16:00":
         hoursAvailable(16);
         break;
         case "00:17:00":
         hoursAvailable(17);
         break;
         case "00:18:00":
         hoursAvailable(18);
         break;
        default:
         console.log("default");
       };
      };
      
      var CLOSINGTIME = 22;
      
      function hoursAvailable(startTimeInt){
        var diff = CLOSINGTIME - startTimeInt;
        var options = "<option value='' disabled selected hidden>Hours</option>";
        var hour = 4;
        for (i = 0; i < diff-3; i++) { 
          options += "<option value="+hour+">"+hour+" hours</option>";
          hour++;
        };
      
        $("select#hours").html(options);
      };
      
      $("select#starttime").on("change", function(){
        selectStartTime(this.value);
      });
      
      功能选择开始时间(val){
      开关(val){
      案例“00:10:00”:
      可用时数(10);
      打破
      案例“00:11:00”:
      可用时数(11);
      打破
      案例“00:12:00”:
      可用小时数(12);
      打破
      案例“00:13:00”:
      可用时数(13);
      打破
      案例“00:14:00”:
      可用时数(14);
      打破
      案例“00:15:00”:
      可用时数(15);
      打破
      案例“00:16:00”:
      可用时数(16);
      打破
      案例“00:17:00”:
      可用时数(17);
      打破
      案例“00:18:00”:
      可用时数(18);
      打破
      违约:
      console.log(“默认”);
      };
      };
      var-CLOSINGTIME=22;
      可用功能小时数(开始时间){
      var diff=关闭时间-开始时间;
      var options=“小时”;
      var小时=4;
      对于(i=0;i
      html

      <select class='form-control', type="time" name="starttime" id="starttime" value="" onchange="myfunction(this)">
                                  <option value="" disabled selected hidden>Start time</option>
                                  <option value="00:10:00">10:00am</option>
                                  <option value="00:11:00">11:00am</option>
                                  <option value="00:12:00">12:00pm</option>
                                  <option value="00:13:00">1:00pm</option>
                                  <option value="00:14:00">2:00pm</option>
                                  <option value="00:15:00">3:00pm</option>
                                  <option value="00:16:00">4:00pm</option>
                                  <option value="00:17:00">5:00pm</option>
                                  <option value="00:18:00">6:00pm</option>
                                </select>
      
      
      <select class="form-control" name="sessions.0.hours" id="hours" label="No. of Hours">
                                 <option value="" disabled selected hidden>Hours</option>
                                 <option value="4">4 hours</option>
                                 <option value="5">5 hours</option>
                                 <option value="6">6 hours</option>
                                 <option value="7">7 hours</option>
                                 <option value="8">8 hours</option>
                                 <option value="9">9 hours</option>
                                 <option value="10">10 hours</option>
                                 <option value="11">11 hours</option>
                                 <option value="12">12 hours</option>
                               </select>
      
      <select class='form-control', type="time" name="starttime" id="starttime" value="" onchange="myfunction(this)">
                                  <option value="" disabled selected hidden>Start time</option>
                                  <option value="00:10:00">10:00am</option>
                                  <option value="00:11:00">11:00am</option>
                                  <option value="00:12:00">12:00pm</option>
                                  <option value="00:13:00">1:00pm</option>
                                  <option value="00:14:00">2:00pm</option>
                                  <option value="00:15:00">3:00pm</option>
                                  <option value="00:16:00">4:00pm</option>
                                  <option value="00:17:00">5:00pm</option>
                                  <option value="00:18:00">6:00pm</option>
                                </select>
      
      
      <select class="form-control" name="sessions.0.hours" id="hours" label="No. of Hours">
                                 <option value="" disabled selected hidden>Hours</option>
                                 <option value="4">4 hours</option>
                                 <option value="5">5 hours</option>
                                 <option value="6">6 hours</option>
                                 <option value="7">7 hours</option>
                                 <option value="8">8 hours</option>
                                 <option value="9">9 hours</option>
                                 <option value="10">10 hours</option>
                                 <option value="11">11 hours</option>
                                 <option value="12">12 hours</option>
                               </select>
      
      function myswithcase(term){
          switch(term){
           case "10:00am":
              //  do not do anything
                 break;
                 case "4:00pm":
                     hoursAvailable("4:00pm".split(':')[0]) 
                 break;
                default:
                 console.log("default");
               };
          }
      
      
      function hoursAvailable(val){
          console.log(val)
          var number = parseInt(val) + 2;
          var a = Array.from(document.getElementById('hours'))
          var b = a.filter(function(rm){return rm.value > number})
          b.forEach(function(rm){
              rm.setAttribute('disabled','disabled')
      })
      }