2012-09-27 38 views
0

我有一個表單,它擴展了Twitter_Form(一個Twitter引導CSS表單),它反過來擴展了Zend_Form。我想在Zend_Form中添加ZendX_JQuery元素,但我得到的,因爲裝飾Zend_Form中的ZendX_JQuery元素

的錯誤的錯誤是

Cannot render jQuery form element without at least one decorator implementing the 'ZendX_JQuery_Form_Decorator_UiWidgetElementMarker' 
Default decorator for this marker interface is the 'ZendX_JQuery_Form_Decorator_UiWidgetElement'. Hint: The ViewHelper decorator does not render jQuery elements 

形式類是:

class Application_Form_Classes extends Twitter_Form { 

    $autocomplete = new ZendX_JQuery_Form_Element_Autocomplete('demo-input-local'); 
    $autocomplete->setJQueryParam('url','http://.../something.php'); 

    $this->addElement($autocomplete); 


    $this->addElement("submit", "register", array("label" => "Register"));} 

回答

0

我添加的自定義multipleautocomplete視圖助手給我Twitter_Form作爲子窗體。如果有其他方法可以做,請發表一個答案。

class Application_Form_Classes extends Twitter_Form{ 

    public function init(){ 

     $jqueryform = new ZendX_JQuery_Form(); 

     $multiautocomplete = new ZendX_JQuery_Form_Element_Multiautocomplete('demoinputlocal'); 
     $multiautocomplete->setJQueryParam('url','http://..../something.php'); 

     $jqueryform->addElement($multiautocomplete); 

     $this->addSubForm($jqueryform, "jqueryform"); 

     $this->addElement("submit", "register", array("label" => "Register")); 
     $this->addElement("reset", "reset", array("label" => "Reset")); 

    } 
}