Javascript 在cakephp中,更改后无法获得单选按钮

Javascript 在cakephp中,更改后无法获得单选按钮,javascript,cakephp,Javascript,Cakephp,我没有为单选按钮的onchange事件获得任何输出。 我想从4个单选按钮中选择3个,禁用文本输入字段,另一个启用文本输入 目前我不能让它输出任何东西 echo $this->Form->input('startDate',array('id'=>'startdatebox','label' => 'Start Date','class'=>'datepicker', 'type'=>'text','style'=>'width:100px;height:

我没有为单选按钮的onchange事件获得任何输出。 我想从4个单选按钮中选择3个,禁用文本输入字段,另一个启用文本输入

目前我不能让它输出任何东西

echo $this->Form->input('startDate',array('id'=>'startdatebox','label' => 'Start Date','class'=>'datepicker', 'type'=>'text','style'=>'width:100px;height:30px','value' => $datestart));

  ..

echo $this -> Form -> input('dateRange', 
               array('id'=>'dateRange2','label' => '<h6>Date Range</h6>','type' => 'radio', 
                 'value' =>$dateSelect,'name'=>'dateRange2' ,'options' =>  $selectoption))
echo$this->Form->input('startDate',array('id'=>'startdatebox','label'=>'Start Date','class'=>'datepicker','type'=>'text','style'=>'宽度:100px;高度:30px','value'=>$datestart));
..
echo$this->Form->input('dateRange',
数组('id'=>'dateRange2','label'=>'Date Range','type'=>'radio',
'value'=>$dateSelect,'name'=>dateRange2','options'=>$selectoption))
)


$(“输入[name='data[User][dateRange2]']”)。在(“单击”,函数()上){
$('startdatebox,'enddatebox').prop('disabled',$(this.val()!=3);
警报(‘aasda’);
});

第一次呼叫
单击单选按钮上的
,如下所示

echo $this -> Form -> input('dateRange', 
  array('id'=>'dateRange2',
      'label' => '<h6>Date Range</h6>',
      'type' => 'radio', 
      'value' =>$dateSelect,
      'name'=>'dateRange2' ,
      'options' =>  $selectoption, 
      'onclick'=> 'myFunc(this.value)'
     )
);
我希望您能帮上忙。

onChange()不适用于单选按钮,但适用于复选框或选择


为了检测收音机的选择操作,必须使用onclick()函数。正如Supravat的回答,您需要在onclick()函数中传递“this.value”,然后在javascript中获得所选的值。

代码中没有更改事件。请更正标题/问题或填写代码。
echo $this -> Form -> input('dateRange', 
  array('id'=>'dateRange2',
      'label' => '<h6>Date Range</h6>',
      'type' => 'radio', 
      'value' =>$dateSelect,
      'name'=>'dateRange2' ,
      'options' =>  $selectoption, 
      'onclick'=> 'myFunc(this.value)'
     )
);
<script type="text/javascript">
function myFunc(val) {
    if(val != 3) {
        document.getElementById("startdatebox").disabled = true;
        document.getElementById("enddatebox").disabled = true;
    } else {
        document.getElementById("startdatebox").disabled = false;
        document.getElementById("enddatebox").disabled = false;
    }
}
</script>
 function myFunc(val) {
      $('#startdatebox, #enddatebox').prop('disabled', $(this).val()  != 3);
 }