【问题标题】:Yii - Behaivor chekcboxYii - 行为复选框
【发布时间】:2014-10-11 02:04:18
【问题描述】:

我有以下似乎很基本的问题:我有一个 HTML,某个复选框,这个:

<? php echo $ form> checkBox ($ certificate, 'a', array ('id' => 'a')); ?>

发送POST时,如果checkbox不带check,发送0,如果checkbox发送1,同样的html我有这个:

<? php echo $ form> checkBox ($ certificate, 'head', array ('id' => 'head')); ?>

最后一次,如果复选框不是检查发送0,而是什么时候检查,什么都不发送。到目前为止我不明白这种行为,有人可以帮助我吗?

【问题讨论】:

    标签: php checkbox yii behavior


    【解决方案1】:

    如果没有关于“证书”模型的属性类型(无论是字符串还是整数)的更多详细信息,我只能推断选择“头”复选框的原因是它的类型与布尔值。

    如果您的“头”类型设置为字符串,请尝试将其设置为整数。

    【讨论】:

    • 部分模型如下所示 :: Certificates.php public function rules() { return array( array('a, head', 'integerOnly'=>true), array('a, cabeza', 'on'=>'搜索'), );显然我的模型定义了更多的领域,但我留下这些,因为它们是相同类型的行为不同。在我的表中,这两个字段的类型是 INT
    • 所以对于所有意图和目的,“a”和“head”属性除了名称之外完全一样吗?那很奇怪。然而,唯一似乎缺少的是您的规则中的“数字”:array('a, head', 'numerical', 'integerOnly'=&gt;true)。也许你是故意漏掉的?
    【解决方案2】:

    好吧,我解决了这个问题。与 checkBox 有 labelEx,出于某种原因,我把:

    &lt;?php echo $form-&gt;labelEx($certificate,'head', array('id' =&gt; 'head')); ?&gt; &lt;?php echo $form-&gt;checkBox($certificate,'head', array('id' =&gt; 'head')); ?&gt;

    这样,POST 发送值检查,我不明白原因,但工作。我想如果是这个组件的一个错误,我不知道。

    【讨论】:

      猜你喜欢
      • 2016-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多