etiket dekoratörünü nasıl kaldırabilirim Bu kodum var; Bununla birlikte, form yine de etiketler arasında etiket elemanı ile birlikte oluşturulmasına rağmen.Gönderme düğmesinden,
Neyi yanlış yapıyorum?
etiket dekoratörünü nasıl kaldırabilirim Bu kodum var; Bununla birlikte, form yine de etiketler arasında etiket elemanı ile birlikte oluşturulmasına rağmen.Gönderme düğmesinden,
Neyi yanlış yapıyorum?
removeDecorator
argümanının büyük/küçük harfe duyarlı olduğunu düşünüyorum. Yani, "Label"
# olmalıdır, büyük harfle 'L'
.
İşlev addElement, son eklenen öğeye değil, geçerli forma bir başvuru döndürür.
Bu deneyebilirsiniz:
$form = new Zend_Form();
$form->addElement('submit', 'submit', array(
'ignore' => true,
'label' => 'Add new material'
));
$element = $form->getElement('submit');
$element->removeDecorator('label');
Ayrıca Zend_Db_Element işlevi yoktur addElement Zend_Db_Form vardır – Erik
benim element için elle dekoratörler tanımlayan ediyorum bu sıkıntı aşmak için ... Elbette kendi etiketlerini tanımlayabilirsiniz
$details->addElement('text', 'in_year', array(
'decorators'=>array(
'ViewHelper',
array('HtmlTag', array('tag' => 'span')),
)
));
. Bu örnekte sadece "ViewHelper" dekoratörünü başlatıyorum. Ben "Etiket" dekoratör initialize istiyorsanız yapardım:
$details->addElement('text', 'in_year', array(
'decorators'=>array(
'ViewHelper',
'Label',
array('HtmlTag', array('tag' => 'span')),
),
'attribs' => array('class' => 'required validate-digits')
));
Bu mantıklı umut ...: o)
Bu benim için çalıştı:
$this->addElements(array(
new Zend_Form_Element_Submit('submit', array(
'label' => 'Save'
))
));
$element = $this->getElement('submit');
$element->removeDecorator('DtDdWrapper');
yaptım $element
için dekoratörler bulunduğunu öğrenmek için print_r($element);
.
Bunun bir fark yaratmadığını denedim. Bunu başka bir yanıtta buldum, ancak bu şekilde belgelerin nasıl yapılacağı değil, bu şekilde yapılması doğru görünmüyor. $ element-> removeDecorator ('DtDdWrapper') -> addDecorator ('HtmlTag', dizi ('etiket' => 'dd')); Bununla birlikte,
Yani, bunu değiştirdiniz: $ element-> removeDecorator ('label'); buna: $ element-> removeDecorator ('Label'); ve hala işe yaramadı mı? Bu durumda belki de var_dump (getDecorators()) 'ı deneyin ve oradan gidelim. – g33kz0r