Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.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
带有JavaScript日期对象的下拉菜单?_Javascript_Object_Date - Fatal编程技术网

带有JavaScript日期对象的下拉菜单?

带有JavaScript日期对象的下拉菜单?,javascript,object,date,Javascript,Object,Date,我想有一个下拉选择菜单,可以选择日期,例如6月21日。当用户从下拉列表中选择日期时,将在某个特定日期的某处显示操作小时数。当前仅显示当前一天的运行时间;这是通过JavaScript日期对象实现的 我想知道是否可以选择一个下拉菜单选项,以某种方式将其转换为正确的日期格式,然后通过我现在拥有的当前函数运行它,该函数的参数仅为当前的月份和日期 更重要的是,如果有人对更好的方法有任何想法,即使是一些相关信息的链接,我都会非常感激。现在,我真的不知道有什么可以模仿的例子。每周的工作时间是否不同?为什么不将

我想有一个下拉选择菜单,可以选择日期,例如6月21日。当用户从下拉列表中选择日期时,将在某个特定日期的某处显示操作小时数。当前仅显示当前一天的运行时间;这是通过JavaScript日期对象实现的

我想知道是否可以选择一个下拉菜单选项,以某种方式将其转换为正确的日期格式,然后通过我现在拥有的当前函数运行它,该函数的参数仅为当前的月份和日期


更重要的是,如果有人对更好的方法有任何想法,即使是一些相关信息的链接,我都会非常感激。现在,我真的不知道有什么可以模仿的例子。

每周的工作时间是否不同?为什么不将下拉列表更改为星期一、星期二等,修改JS函数以获取一个表示星期几的整数,然后只修改每个元素,使其具有onclick事件绑定,并使用适当的整数天数调用JS函数

例如:

<select>
  <option onclick="showHoursOfOperation(0);">Sunday</option>   
  <option onclick="showHoursOfOperation(1);">Monday</option>
  <option onclick="showHoursOfOperation(2);">Tuesday</option>
  [ ... ]
</select>
编辑: 也许是从@ibu偷来的更优雅的解决方案。未经测试,可能不起作用

<select onchange="showHoursOfOperation(this.selectedIndex);">
  <option>Sunday</option>
  <option>Monday</option>
  [ ... ]
</select>

您可以在服务器上生成数据,以便选项将日期显示为“6月21日”或其他任何日期,并将开放时间作为值。或者,该值可以是21june或类似值,相关对象使用该值作为键,小时数作为值:

var openingHours = {
    '21June' : '08:00am - 05:30pm',
    '22June' : '08:00am - 09:00pm',
    ...
}
等等。然后只需使用所选选项的值即可获得开放时间。有很多其他的方法来实现这一点,这取决于时间的可变程度和你想要覆盖的日期


大多数企业只发布每周工作时间和公共假日的特别通知。

是的,您可以在下拉列表中使用onchange事件,并为您在工作期间可以访问的选项附加值event@ibu,+1表示一次更改。编辑我的答案…假期?e、 g.7月4日星期一的工作时间为零,但7月11日星期一的工作时间为8-5,是否可以为假期增加一个工作时间?我认为这是防止冗余的最好方法。