单/复选框

单选框

通过 Dcat\Admin\Widgets\Radio类可以很方便地快速构建单选框表单。

基本使用

  1. <?php
  2. use Dcat\Admin\Widgets\Radio;
  3. // 表单 name 属性
  4. $name = 'state';
  5. // 选项
  6. $options = [
  7. 1 => '未处理',
  8. 2 => '已处理',
  9. 3 => '已拒绝',
  10. ];
  11. $radio = Radio::make($name, $options)->check(1); // 选中第一个选项

效果

单/复选框 - 图1

显示在同一行 (inline)

  1. <?php
  2. use Dcat\Admin\Widgets\Radio;
  3. $name = 'state';
  4. $options = [
  5. 1 => '未处理',
  6. 2 => '已处理',
  7. 3 => '已拒绝',
  8. ];
  9. $radio = Radio::make($name, $options)->check(1)->inline();

效果

单/复选框 - 图2

设置禁选的选项 (disable)

  1. <?php
  2. use Dcat\Admin\Widgets\Radio;
  3. $name = 'state';
  4. $options = [
  5. 1 => '未处理',
  6. 2 => '已处理',
  7. 3 => '已拒绝',
  8. ];
  9. $radio = Radio::make($name, $options)->inline()->disable([2, 3]);

效果

单/复选框 - 图3

设置样式 (style)

通过style方法可以设置单选框的样式,支持primaryinfosuccessdanger

设置尺寸

单选框支持3中尺寸,使用方法如下

small设置为小尺寸

  1. $radio->small();

large设置为大尺寸

  1. $radio->large();

复选框

通过 Dcat\Admin\Widgets\Checkbox类可以很方便地快速构建复选框表单,并且复选框类是属于Radio的子类,因此用法与Radio类基本一致。

基本用法

  1. <?php
  2. use Dcat\Admin\Widgets\Checkbox;
  3. // 表单 name 属性,因为此处是多选,所以需要加上中括号
  4. $name = 'hobbies[]';
  5. // 选项
  6. $options = [
  7. 1 => '唱',
  8. 2 => '跳',
  9. 3 => 'RAP',
  10. 4 => '打篮球',
  11. ];
  12. $checkbox = Checkbox::make($name, $options)
  13. ->inline()
  14. ->check([1, 2]); // 这里允许传递数组,默认选中多个选项

效果

单/复选框 - 图4

全选

通过checkAll方法可以选中全部选项。

  1. <?php
  2. use Dcat\Admin\Widgets\Checkbox;
  3. // 表单 name 属性,因为此处是多选,所以需要加上中括号
  4. $name = 'hobbies[]';
  5. // 选项
  6. $options = [
  7. 1 => '唱',
  8. 2 => '跳',
  9. 3 => 'RAP',
  10. 4 => '打篮球',
  11. ];
  12. $checkbox = Checkbox::make($name, $options)
  13. ->inline()
  14. ->checkAll(); // 全部选中

checkAll方法也允许全选的同时排除指定选项。

  1. $checkbox = Checkbox::make($name, $options)
  2. ->inline()
  3. ->checkAll([1, 3]); // 全部选中,但是排除key为1和3的选项

更多用法

更多用法与Radio的用法一直,这里不再赘述。