~~~
// 文本框:textInput();
// 密码框:passwordInput();
// 单选框:radio(),radioList();
// 复选框:checkbox(),checkboxList();
// 下拉框:dropDownList();
// 隐藏域:hiddenInput();
// 文本域:textarea(['rows'=>3]);
// 文件上传:fileInput();
// 提交按钮:submitButton();
// 重置按钮:resetButtun();
// 设置表单属性
<?php $form = ActiveForm::begin([
// 'action' => ['log/login'], //提交地址(*可省略*)
// 'method'=>'post', //提交方法(*可省略默认POST*)
// 'id' => 'login-form', //设置ID属性
'options' => [
'class' => 'form-horizontal', //设置class属性
'enctype' => 'multipart/form-data' //文件上传时添加该编码
],
'fieldConfig' => [
'template' => '<div class="form-group">
<center>
<label class="col-md-2 control-label" for="type-name-field">{label}</label>
</center>
<div class="col-md-8 controls">{input}{error}</div>
</div>'
], //设置模板的样式
]); ?>
// 添加表单内容
<!--文本框 (*验证长度可在这里写 maxlength 这样就不用再 model 里面写了 *)-->
<? echo $form->field($model, 'username',
['inputOptions' => ['placeholder'=>'请输入用户名',
'class' => 'ipt'],
'template'=>'
<div class="form-group">
<div class="col-md-8 controls">{label}{input}{error}</div>
</div>
'])->textInput(['maxlength' => 20,"class" => "span12", "placeholder" => "管理员账号"]) ?>
<!--密码框 (*不使用他的lable只需要用false把他禁止, 然后你可以自己写*)-->
<?= $form->field($model, 'pwd')->label(false)->passwordInput([
'maxlength' => 20,
"style"=>"width:200px; height:30px;",
"placeholder"=>"请输入您的密码"
])
?>
<!--单选按钮(*设置默认选中*)-->
<?php $model->sex=1; echo $form->field($model, 'sex')->radioList(['1'=>'男','0'=>'女']) ?>
<!--验证邮箱-->
<?= $form->field($model, 'email')->textInput() ?>
<!--下拉框的默认选中使用 prompt 设置 -->
<?= $form->field($model, 'school')->dropDownList(['1'=>'大学','2'=>'高中','3'=>'初中'], ['prompt'=>'请选择','style'=>'width:120px']) ?>
<!--文件上传-->
<?= $form->field($model, 'photo')->fileInput() ?>
<!--复选框 -->
<?= $form->field($model, 'hobby')->checkboxList(['0'=>'篮球','1'=>'足球','2'=>'羽毛球','3'=>'乒乓球']) ?>
<!--文本域-->
<?= $form->field($model, 'remark')->textarea(['rows'=>3]) ?>
<!--隐藏域-->
<?= $form->field($model, 'userid')->hiddenInput(['value'=>3])->label(false); ?>
<a href="<?php echo yii\helpers\Url::to(['public/seekpassword']); ?>" class="forgot">忘记密码?</a>
// 修改某一列的html
<?php echo $form->field($model, 'rememberMe',[
'template' => '<div class="remember">{input}<label for="remember-me">记住我</label></div>',
])->checkbox([ 'id' => 'remember-me', ]); ?>
// 按钮
<?php echo Html::submitButton('登录', ["class" => "btn-glow primary login"]); ?>
<? echo Html::submitButton('提交', ['class'=>'btn btn-primary','name' =>'submit-button']) ?>
<? echo Html::resetButton('重置', ['class'=>'btn btn-primary','name' =>'submit-button']) ?>
// 表单结束
<?php ActiveForm::end(); ?>
~~~
默认选中,只要设置 $form->字段 的值即可。
# Yii2 百度编辑器 - Yii2-ueditor-widget
百度UEditor
GitHub地址 https://github.com/BigKuCha/yii2-ueditor-widget
安装
`$ php composer.phar require kucha/ueditor "*"`
or add
`"kucha/ueditor": "*"`
to the require section of your composer.json file.
应用
controller内定义一个方法,用于配置编辑器:
~~~
public function actions()
{
return [
'upload' => [
'class' => 'kucha\ueditor\UEditorAction',
]
];
}
~~~
view内调用编辑器:
~~~
<?php echo \kucha\ueditor\UEditor::widget([]); ?>
~~~
或者:
~~~
<?php
echo $form->field($model,'colum')->widget('kucha\ueditor\UEditor',[]);
?>
~~~
说明
ueditor只支持2种语言,`en-us`和`zh-cn`,默认跟随系统语言 `Yii::$app->language`,可以通过2种方式设置:
1.修改系统语言,在main.php(高级版) 或者web.php(基础版)添加`'language' => 'zh-CN',`。
2.实例化的时候配置语言选项,见下边配置
3.
**配置相关**
编辑器相关配置,请在view 中配置,参数为clientOptions,比如定制菜单,编辑器大小等等,具体参数请查看UEditor官网文档。
简单实例:
~~~
use \kucha\ueditor\UEditor;
echo UEditor::widget([
'clientOptions' => [
//编辑区域大小
'initialFrameHeight' => '200',
//设置语言
'lang' =>'en', //中文为 zh-cn
//定制菜单
'toolbars' => [
[
'fullscreen', 'source', 'undo', 'redo', '|',
'fontsize',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat',
'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|',
'forecolor', 'backcolor', '|',
'lineheight', '|',
'indent', '|'
],
]
]);
~~~
文件上传相关配置,请在controller中配置,参数为config,例如文件上传路径等;更多参数请参照 config.php (跟UEditor提供的config.json一样)
简单实例:
~~~
public function actions()
{
return [
'upload' => [
'class' => 'kucha\ueditor\UEditorAction',
'config' => [
"imageUrlPrefix" => "http://www.phpxmn.com", //图片访问路径前缀
"imagePathFormat" => "/upload/image/{yyyy}{mm}{dd}/{time}{rand:6}" //上传保存路径
],
]
];
}
~~~