如何更改CakePHP 3.0.0中的输入包装div类。?
我的代码是:
<?= $this->Form->input('mobile',['div'=>['class'=>'col-md-4'],'class'=>'form-control','label'=>false]) ?>
然后它返回:
<div class="input text">
<input type="text" name="mobile" div="col-md-4" class="form-control" id="mobile">
</div>
我希望输出如下:
<div class="col-md-4">
<input type="text" name="mobile" class="form-control" id="mobile">
</div>
答案 0 :(得分:17)
...没有办法只将属性传递给模板。您必须重新定义相应的表单助手模板。
您可以使用例如FormHelper::templates()
:
$myTemplates = [
'inputContainer' => '<div class="col-md-4 input {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="col-md-4 input {{type}}{{required}} error">{{content}}{{error}}</div>'
];
$this->Form->templates($myTemplates);
或仅通过templates
选项输入特定内容:
echo $this->Form->input('mobile', [
'templates' => [
'inputContainer' => '<div class="col-md-4 input {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="col-md-4 input {{type}}{{required}} error">{{content}}{{error}}</div>'
],
'class' => 'form-control',
'label' => false
]);
另见
...你可以使用所谓的模板变量。您可以将它们放在模板中的任何位置
$myTemplates = [
'inputContainer' => '<div class="input {{class}} {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="input {{class}} {{type}}{{required}} error">{{content}}{{error}}</div>'
];
$this->Form->templates($myTemplates);
并使用templateVars
选项为其定义值
echo $this->Form->input('mobile', [
'class' => 'form-control',
'label' => false,
'templateVars' => [
'class' => 'col-md-4'
]
]);
另见
答案 1 :(得分:1)
此代码适用于我的应用程序。我认为根据你的要求,这将是有用的。
<?php
echo $this->Form->input(
'name', [
'class' => 'full-input',
'label' => 'Class Name :',
'templates' => [
'inputContainer' => '<div class="full-input-wrapper">{{content}}</div>'
]
]);
?>
答案 2 :(得分:-1)
<div class="col-md-4">
<?php echo $this->Form->input('mobile',['id' => 'mobile', 'class' => 'form-control']); ?>
</div