我试图在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');
以上两点都不起作用。当我右键单击元素时,有一个隐藏的输入具有相同的名称,我想知道是否覆盖。上面的代码适用于普通的单选按钮。
任何帮助都会很棒。谢谢
答案 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;