BoostCake Form input でdiv が消えない場合

BoostCake の $this->Form->inputでdiv が消えない場合について

BoostCakeのFormHelperの処理箇所

protected function _divOptions($options) {
$this->_inputType = $options['type'];

$divOptions = array(
'type' => $options['type'],
'div' => $this->_inputOptions['wrapInput']
);
$this->_divOptions = parent::_divOptions($divOptions);

$default = array('div' => array('class' => null));
$options = Hash::merge($default, $options);
$divOptions = parent::_divOptions($options);
if ($this->tagIsInvalid() !== false) {
$divOptions = $this->addClass($divOptions, $this->_inputOptions['errorClass']);
}
return $divOptions;
}

何故かdivが消えないという問題が起きたので、ちょっと見てみた。

inputのoptionで array( 'div' => false )としても、inputOptions['wrapInput']
array('tag' => 'div' )
となってしまうようで、'div'=>falseにはならない。

なぜこのようなことになってしまうかは不明。
調べるのはめんどい。

どうしても消えない場合の回避策

$this->Form->input ( 'hoge', array ( 'div' => false, 'wrapInput' => false) );
wrapInputごと消してしまう。

wrapInputを使っている場合は…。

コメント

このブログの人気の投稿

eclipse 改行後のインデントを無効にする

Jquery datetimepicker 日本語にならない原因

サービスエラー:Spreadsheets(service error:Spreadsheets)の原因