在某些场景下,我们选择某些表单项的时候,希望显示或隐藏指定的表单项,此时我们就可以用触发器来解决,它可以让你很轻松的实现动态显示和隐藏某些表单项。

    触发器的触发表单项名目前仅支持三种表单类型:radio,checkbox,select;触发后显示或隐藏的表单项类型不限制。

    格式:$assign[‘buildForm’][‘trigger’][‘触发的表单项名’][‘触发的值’] = [‘触发后显示的表单项1’, ‘触发后显示的表单项2’, ….];

    1. public function index()
    2. {
    3. $assign['buildForm'] = [
    4. 'trigger' => [// 触发器定义
    5. 'type' => [//触发表单项名
    6. //触发的值 => ['触发后显示的表单项名']
    7. 'gr' => ['email', 'mobile'],
    8. 'gs' => ['legal_person', 'contact'],
    9. ],
    10. // ....更多触发表单项
    11. ],
    12. 'items' => [
    13. [
    14. 'type' => 'radio',
    15. 'name' => 'type',// 触发表单项名
    16. 'title' => '账号类型',
    17. 'value' => 'gr',
    18. 'option' => [ 'gr' => '个人', 'gs' => '公司'],
    19. ],
    20. [
    21. 'type' => 'text',
    22. 'name' => 'email',
    23. 'title' => '个人邮箱',
    24. ],
    25. [
    26. 'type' => 'text',
    27. 'name' => 'mobile',
    28. 'title' => '个人手机',
    29. ],
    30. [
    31. 'type' => 'text',
    32. 'name' => 'legal_person',
    33. 'title' => '公司法人',
    34. ],
    35. [
    36. 'type' => 'text',
    37. 'name' => 'contact',
    38. 'title' => '公司联系人',
    39. ]
    40. ],
    41. ];
    42. return $this->assign($assign)->fetch();
    43. }

    form_trigger.gif