CakePHP Form Helper刚刚为我生成了太多代码

时间:2010-07-13 16:16:12

标签: cakephp

我正在使用cakePHP。 我使用cakePHP内置的Form Helper生成一个输入文本框:

echo $form->input('quote', array('label'=>'Post Number', 'class'=>''));

但是当我查看HTML源代码时,我发现了这些:

<div class="input text">
<label for="ReplyQuote">Post Number</label>
<input name="data[Reply][quote]" type="text" class="" maxlength="12" value="1" id="ReplyQuote" />
</div>  

这真的绰绰有余。我的意思是Cake内置Form Helper生成的代码 那些以奇怪的命名约定方式命名的类的DIV标签没有帮助,
因为类名之间有空格,如:

 <div class="input text">

CakePHP有没有让用户省略那些DIV标签的选项?

2 个答案:

答案 0 :(得分:5)

查看可以传递给FormHelper :: input()方法的options数组。书籍参考位于http://book.cakephp.org/view/189/Automagic-Form-Elements

简而言之,表单助手正在为div添加两个不同的类 - 输入和文本。如果您不想要div,请执行以下操作:

echo $form->input( 'quote', array( 'label' => 'Post Number', 'div' => false ) );

设置options ['class']值只会影响分配给实际输入本身的类选择器(请参阅HTML代码中输入标签的class =“”?)

答案 1 :(得分:1)

你也可以使用$ form-&gt; text()作为输入框。