1

尽管有很多试验和错误,我还是无法让 NumberTextBox 小部件工作。我不断收到此错误消息:

可捕获的致命错误:传递给 Zend_Dojo_View_Helper_NumberTextBox::numberTextBox() 的参数 4 必须是数组,给定 null

奇怪的是:我直接从 ZF 示例页面尝试了这个示例,但失败并出现同样的错误

            ->addElement(
            'NumberTextBox',
            'numberbox',
            array(
                'label' => 'NumberTextBox',
                'required'  => true,
                'invalidMessage' => 'Invalid elevation.',
                'constraints' => array(
                    'min' => -20000,
                    'max' => 20000,
                    'places' => 0,
                )
            )
        )

所以,我现在很茫然。如果有人有时间查看此处找到的代码,我们将不胜感激。我知道这是我忽略的东西。它总是如此。

4

3 回答 3

1

如果要设置装饰器,请确保将 ViewHelper 更改为 DijitElement。我遇到了这个问题,这就是原因。

于 2011-04-13T01:04:04.573 回答
0

我使用基本表格,

BaseForm extends Zend_Dojo_Form{



   public $elementDecorators = array(
            'DijitElement',
            array(
                   array('data' => 'HtmlTag'), 
                    array('tag' => 'div', 'class' => 'element')
                 ),
              array('Label', 
                     array('tag' => 'div', 'class' => 'element-label')
                   ),
              array(array('row' => 'HtmlTag'), 
                    array('tag' => 'div', 'class' => 'element-row' )
                   )
         );     

   ... init(){}
   .... construct(){}
}

MyForm 扩展 BaseForm{

constructor(){
        $this->starts = new Zend_Dojo_Form_Element_DateTextBox( "starts" );
        $this->starts->setLabel('Starting from')
             ->setDecorators($this->elementDecorators);

}

}

我使源代码尽可能简单,以描述我的意思。

于 2011-11-24T04:00:18.057 回答
0

在黑暗中射击:尝试去掉 'places' 末尾的 ',' => 0,'

于 2010-04-01T17:06:11.767 回答