如何在 Yii javascript 中使用复选框隐藏或显示文本字段
how to Hide or Show textField using checkBox in Yii javascript
我已经在我的Yii项目视图中激活了我的js文件:
<?php
/* Register javascript */
Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl . '/js/showHide.js');
?>
在我看来,我有一个名为"tbo_sk"的复选框和名为"nilaiblksk"的文本字段
<?php echo $form->checkBox($model, 'tbo_sk'); ?>
<div style="display: none"><?php echo $form->textField($model, 'nilaiblksk'); ?></div>
我的问题是,我们如何使 showHide.js 文件中的 javascript 代码在我选中复选框时显示 textField,否则如果未选中则隐藏 textField?
在我的div 标签中,我使用 style="display: none" 来隐藏 textField。
提前感谢!
最好给你的div一个ID或Class,而不是在jQuery中使用parent():
<div id="hiddenDiv" style="display: none"><?php echo $form->textField($model, 'nilaiblksk'); ?></div>
<script>
$(document).ready(function(){
$('#MODELNAME_tbo_sk').change(function(){
$('#hiddenDiv').toggle(); // or do $('#MODELNAME_nilaiblksk').parent().toggle();
});
});
</script>
然后视图文件添加以下代码:
在准备切换输入的文档上注册一个 jquery 函数:
$buttonToggler= <<<JS
toggleInput=function(src,inputName){
if(src.checked){
$(src.form[inputName]).removeProp('disabled');
}else{
$(src.form[inputName]).prop('disabled','disabled');
}
}
JS;
Yii::app()->clientScript->registerScript('toggleFormInputs',$buttonToggler, CClientScript::POS_READY);
为复选框更改事件添加函数:
echo $form->checkBox($model,'tbo_sk',
array('onchange'=>'js:toggleInput(this,"ModelName[nilaiblksk]")'));
echo $form->textField($model,"nilaiblksk");
您必须替换实际模型名称,例如"ModelName[nilaiblksk]",例如,对于后模型,它将是"Post[nilaiblksk]",无论您使用的实际模型如何。
还有一件事,你必须改变切换输入函数,例如,如果你可能只想让它只读或添加删除css类
相关文章:
- 显示隐藏复选框
- 在jsTree中隐藏复选框
- 如何从django表单库中隐藏复选框,并使用Javascript切换其显示属性
- 单击后隐藏复选框
- 当按下按钮时,隐藏复选框会出现(正确),但不会'再次按下时t消失
- 根据数组中的值显示/隐藏复选框
- 如何从网格视图中隐藏复选框
- 如何隐藏复选框文本
- JQuery隐藏复选框选中,但不取消选中
- 使用JavaScript隐藏复选框时,请取消选中该复选框
- 身体负荷时隐藏复选框
- Kendo UI ASP.NET MVC-网格-使用JavaScript隐藏复选框
- 在显示/隐藏复选框中添加动画
- 隐藏复选框,但保留它的存在
- 不发送隐藏复选框输入值:(
- 在隐藏复选框上添加更改事件
- 如何使用jQuery显示/隐藏复选框中选中/未选中状态的元素
- 获取隐藏复选框的值
- 当从下拉菜单中选择默认值时,隐藏复选框.[Angular js]
- Javascript不显示/隐藏复选框点击的选择框