2014-10-16 53 views
-2

在Cakephp我有一个类型的表单输入时间。用户从3个下拉框中选择时间(小时,分钟和上午/下午)。我需要用户能够选择没有时间选项称为'不可用'格式化时间输入3个下拉框的形式

我有一个选项选择'不可用',所以用户可以选择不指定时间。这如下所示。

我有一个下拉框的时间,需要选择一个不可用的选项。在分钟下拉框和am.pm中选择不可用时,我希望分钟和am/pm下拉框自动设置为在小时内选择此选项时不可用。

 echo $this->Form->input('mon_start', 
              array('label'=> 'Start','type' => 'time', 'style'=>'width: 80px', 'empty' => 'not available', 'selected'=>$monstart)); 
+1

如果我得到一些反馈,它会更有帮助,所以我可以添加额外的内容或找到解决方案(如果存在的话)。 – ajt 2014-10-16 13:22:31

+0

我有一个下拉框的时间,需要在小时内选择一个不可用的选项。在分钟下拉框和am.pm中选择不可用时,我希望分钟和am/pm下拉框自动设置为在小时内选择此选项时不可用。 – ajt 2014-10-28 00:25:12

+0

我已经使这个问题更清楚,所以请让我发帖 – ajt 2014-10-28 00:26:34

回答

1

这个问题有点不明确,所以这里是一个不确定的答案。

您必须使用JavaScript,检查onchange事件中的选定值,并根据所选值为其他选择元素设置所选选项。

这是一个基于jQuery的示例。

JS

var selects = $('.selectlr').on('change', function() 
{ 
    if($(this).find(':selected').val() === 'none') 
    { 
     selects.find('[value="none"]').prop('selected', true); 
    } 
}); 

HTML

<select class="selectlr"> 
    <option value="none">None</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
</select> 
<select class="selectlr"> 
    <option value="none">None</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
</select> 
<select class="selectlr"> 
    <option value="none">None</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    <option value="3">3</option> 
</select> 

小提琴

http://jsfiddle.net/7g97no5a/