Ошибка с dijit.form.NumberTextBox - PullRequest
       16

Ошибка с dijit.form.NumberTextBox

1 голос
/ 25 февраля 2010

Несмотря на множество проб и ошибок, я не могу заставить работать виджет NumberTextBox. Я продолжаю получать это сообщение об ошибке:

Исправляемая фатальная ошибка: аргумент 4, переданный Zend_Dojo_View_Helper_NumberTextBox :: numberTextBox (), должен быть массивом, равным NULL

Странно то, что я попробовал этот пример прямо со страницы примеров ZF, и он потерпел неудачу с той же ошибкой

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

Итак, я в растерянности. Если у кого-то есть время взглянуть на найденный код здесь , ваша помощь будет принята с благодарностью. Я знаю, что это то, что я пропускаю. Это всегда так.

Ответы [ 3 ]

1 голос
/ 13 апреля 2011

Если вы устанавливаете декораторы, убедитесь, что вы изменили ViewHelper на DijitElement. Я столкнулся с этой проблемой, и это было причиной.

0 голосов
/ 24 ноября 2011

Я использую базовую форму,

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);

}

}

Я сделал исходный код максимально простым, чтобы изобразить идею того, что я имею в виду.

0 голосов
/ 01 апреля 2010

Выстрел в темноте: попробуйте избавиться от «,» в конце «мест» => 0, '

...