Yii 使用CActiveForm创建表单,以及htmlOptions简单说明

有关更多 CActiveForm的信息: http://www.yiiframework.com/doc/api/CActiveForm


1. Yii 使用CActiveForm 文件表单时,要注意添加'enctype=multipart/form-data' ,然而CActiveForm中没有enctype属性,只能通过‘htmlOptions’属性来添加。

eg:

<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'test-user-testuser-form',

    'action'=>'test/textuser',
    'htmlOptions'=>array('enctype'=>'multipart/form-data'),
)); ?>

注:Yii CActiveForm下的htmlOptions属性,以及 CActiveForm方法下的htmlOptions 属性,都是用来添加该元素html 属性。

 

2. 在标签中使用js、css,同样也是用htmlOptions属性

eg:

<?php echo $form->radioButton($model,'modifiedTime',array('value'=>1,'checked'=>true,'onclick'=>"js:alert('asdf')",) ); ?>

<?php echo $form->textArea($model,'applicationDesc',array('class'=>'formInput','style'=>'height:120px;width:280px;')) ; ?>

注:黄色底的就是 htmlOptions属性了。一看大家就明白了。

 

htmlOptions属性,如刚才所说,就是添加标签对应属性

 

3.CFormModel如何按自己简单的方法传值(赋值)

 a.【Model】要保证CFormModel 的表单验证类有这个变量

     public $application;//自己随便定义的,不必非得是数据库字段

 

 b.  【Control】直接给对应赋值,值可以是单个字符串、数组。

      这里要解释的是:当为textField,textArea 等这样的类型,为字符串;当为checkBoxList 时为数组

    $model = new TestForm();

    $model->application = 'basdef';

    $model->application = array('0'=>'1','1'=>'3');//数组值对应为view中checkbox的checked一位数组默认值

 

 c.  【View】

<?php

$application = array('0'=>'aaa','1'=>'bbb','2'=>'ccc','3'=>'ddd');

?>

    <div class="row">
        <?php echo $form->labelEx($model,'application',array('class'=>'formLabel')); ?>
        <?php echo $form->application($model,'application',$application ); ?>
        <?php echo $form->error($model,'application'); ?>
    </div>

这样checkbox checked有 '1'=>'bbb' 和 '3'=>'ddd'

    <div class="row">
        <?php echo $form->labelEx($model,'applicationDesc',array('class'=>'formLabel')); ?>
        <?php echo $form->textArea($model,'applicationDesc',array('class'=>'formInput','style'=>'height:120px;width:280px;')); ?>
        <?php echo $form->error($model,'applicationDesc'); ?>
    </div>

 

4.checkBoxList 举例

<?php echo CHtml::CheckBoxList('classifyCk',null,$classifyArr,array('separator '=>'&nbsp;&nbsp;','template '=>'{input} {label}'));?>

 

==============================================

点缀娱乐 点缀娱乐 点缀娱乐 点缀娱乐 点缀娱乐 点缀娱乐 点缀娱乐 点缀娱乐 

==============================================


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值