使用jQuery取消选择Yii2 radiolist

时间:2017-07-20 08:58:18

标签: javascript php jquery yii2 radiobuttonlist

我试图在yii2中使用jquery取消选择单选按钮。我已尝试使用jQuery取消选择单选按钮的所有可能语法。

  <?= $form->field($model, "radio[$component->accident_component_id]")->radioList(ArrayHelper::map(AccidentTemplateComponentData::find()->where(['=', 'accident_component_id', $component->accident_component_id])->all(),'accident_data_id' ,'accident_data_text'), ['separator'=>'<br/>','tag'=> false, 'prompt'=>'- Options -', 'class'=>"$checkClass", "id"=>"input-$component->accident_component_id"])->label(false); ?>

取消选中单选按钮的Jquery代码在

下面
  //tried using Javascript
  document.getElementByNAme('Accident[radio][$component->accident_component_id]').checked = false;

  //tried using jQuery
  $('input[name=\"Accident[radio][$component->accident_component_id]\"]').removeAttr('checked');

以上两点都不起作用。当我右键单击元素时,有一个隐藏的输入具有相同的名称,我想知道是否覆盖。上面的代码适用于普通的单选按钮。

任何帮助都会很棒。谢谢

1 个答案:

答案 0 :(得分:0)

您需要添加<?php以回显其变量值。

 //tried using Javascript
  document.getElementsByName('Accident[radio][<?php echo $component->accident_component_id ?> ] ').checked = false;

  //tried using jQuery
  $('input[name=\"Accident[radio][<?php echo $component->accident_component_id]\"?>]').removeAttr('checked');

如果需要,请添加",例如document.getElementByNAme('Accident[radio]["<?php echo $component->accident_component_id] ?>").checked = false;

修改

在javascript中,getElementByNAme没有方法名称getElementsByName

document.getElementsByName('Accident[radio][$component->accident_component_id]')[0].checked = false;