Шаблон флажка формы Yii2 - PullRequest
       7

Шаблон флажка формы Yii2

0 голосов
/ 21 февраля 2019

Я установил параметры формы:

<?
$form = ActiveForm::begin([
    'id' => 'activeForm',
    'action' => 'javascript://',
]);

$checkboxTemplate = '<div class="checkbox">{labelTitle}{beginLabel}{input}<span class="slider round"></span>{endLabel}{error}{hint}</div>';
echo $form->field($aclForm, tbl_RbacActions::IS_DEVELOPMENT)
    ->checkbox([
        'labelOptions' => ['class' => 'switch'],
        'template' => $checkboxTemplate
]);
?>

В результате все равно получается стандартная форма со стандартными классами:

<form id="Index-form" class="row col-12 no-gutters" action="javascript://" method="post">
    <input type="hidden" name="_csrf-frontend" value="Lo7lVHTJ9wcN5rdfjK-b7AgW8L4OHEaqI9IsVofZPOl3yKkFBJqAQz-i-y7H3-mdMUmY-H1RcMRBhkU01-F2oA==">
    <div class="form-group field-aclform-is_development required">
        <input type="hidden" name="AclForm[is_development]" value="0">
        <label class="switch">
            <input type="checkbox" id="aclform-is_development" name="AclForm[is_development]" value="1" template="{input}{beginLabel}{labelTitle}{endLabel}{error}"> Is Development</label>
        <div class="help-block"></div>
    </div>
</form>

Почему он добавляет шаблон в качестве вводаатрибут?

1 Ответ

0 голосов
/ 21 февраля 2019

Вы не предоставили шаблон HTML, который вы пытаетесь использовать или интегрировать здесь, в поле-флажок, но в отношении добавления template в качестве attribute поля ввода вполне логично, когда вы передаетеэто опция checkbox, а не опция field.

Вам необходимо указать template в виде массива для третьего параметраoption из field см. Ниже

<?php
    $form = ActiveForm::begin(
        [
            'id' => 'activeForm',
            'action' => 'javascript://'
        ]
    );

    $checkboxTemplate = '<div class="checkbox">{labelTitle}{beginLabel}{input}<span class="slider round"></span>{endLabel}{error}{hint}</div>';

    echo $form->field(
        $aclForm, 
        tbl_RbacActions::IS_DEVELOPMENT, 
        [
            'template' => $checkboxTemplate
        ]
    )->checkbox(
        [
            'labelOptions' => ['class' => 'switch']

        ]
    );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...