【问题标题】:Checkbox value set to 1 upon first checked and not changes on unchecked.复选框值在第一次选中时设置为 1,在未选中时不会更改。
【发布时间】:2014-04-10 10:47:52
【问题描述】:

复选框的值设置为 value=1,如果我未选中它会给出相同的值。我通过萤火虫进行了检查。这是我的代码。

 <?php $form=$this->beginWidget('CActiveForm', array(
'action'=>Yii::app()->createUrl($this->route),
'method'=>'get',)); ?>

    <?php echo $form->label($userModel,'email'); ?>
    <?php echo $form->textField($userModel,'email',array('size'=>40,'maxlength'=>128)); ?>


    <?php echo $form->label($userModel,'Active License'); ?>
    <?php echo CHtml::checkBox("status",$license->status=='ACTIVE'); ?>


<div class="row buttons">
    <?php echo CHtml::submitButton('Search'); ?> 
</div>
<?php $this->endWidget(); ?>

这里实现了搜索功能

 Yii::app()->clientScript->registerScript('search', "
 $('.search-form form').submit(function(){

$.fn.yiiGridView.update('license-grid', {
    data: $(this).serialize(),

【问题讨论】:

  • 请记住,未选中的复选框实际上不会被发布。有解决此问题的方法。

标签: php jquery checkbox yii


【解决方案1】:

使用uncheckValue 见:http://www.yiiframework.com/doc/api/1.1/CHtml#checkBox-detail

<?php 
    echo CHtml::checkBox("status", 
            $license->status=='ACTIVE', 
            array('uncheckValue' => 0)); 
?>

【讨论】:

  • 我已经尝试过了,但它不工作,但如果我明确地将值设置为 0,那么它工作。比如 if (!$('.search-form form').status.checked) { $('.search-form form').status.value = 0; }
猜你喜欢
  • 1970-01-01
  • 2015-02-16
  • 2012-03-01
  • 1970-01-01
  • 2013-04-03
  • 1970-01-01
  • 1970-01-01
  • 2017-04-16
  • 1970-01-01
相关资源
最近更新 更多