2011-09-30 18 views
6

Chcę dodać klasę css allowMultiSubmit do przycisku zrc.form, aby uniknąć alertu wielokrotnego wysyłania. Przycisk jest zdefiniowany następująco:Jak dodać klasę css do przycisku z3c.form

from z3c.form import form 
from plone.app.z3cform.layout import wrap_form 

class MyForm(form.Form):  
    ... 
    @button.buttonAndHandler(_(u"Search")) 
    def handleSearch(self, action): 
     ... 

MyWrappedFormView = wrap_form(MyForm) 

Wynik że chcę osiągnąć to:

<input id="form-buttons-search" 
     class="submit-widget button-field allowMultiSubmit" 
     type="submit" 
     value="Search" 
     name="form.buttons.search"> 

Nie musi być w prosty sposób, ale nie mogę dowiedzieć się, jak to zrobić.

Odpowiedz

7

Można zastąpić metodę updateActions swojej klasie z3c.form i użyć metody addClass dodać klasę css do przycisku:

from z3c.form import form 
from plone.app.z3cform.layout import wrap_form 

class MyForm(form.Form):  
    ... 
    @button.buttonAndHandler(_(u"Search")) 
    def handleSearch(self, action): 
     ... 

    def updateActions(self): 
     super(MyForm, self).updateActions() 
     self.actions['submit'].addClass("allowMultiSubmit") 

MyWrappedFormView = wrap_form(MyForm) 
+0

Dziękuję bardzo. Pracował jak urok. Świetnie. –

Powiązane problemy