2011-09-30 9 views
6

複数送信アラートを避けるために、CSSクラスallowMultiSubmitをzrc.formボタンに追加します。z3c.formボタンにCSSクラスを追加する方法

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) 

私が達成したい結果がこれです:ボタンは、次のように定義されて

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

あり簡単な方法でなければなりませんが、私はどのように把握することはできません。

答えて

7

あなたのz3c.formクラスのupdateActionsメソッドをオーバーライドして、ボタンにCSSクラスを追加するために、addClassメソッドを使用することができます。

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

はどうもありがとうございました。魅力的に働いた。素晴らしい。 –

関連する問題