diff --git a/ngforms.py b/ngforms.py index d318196..db8dc99 100644 --- a/ngforms.py +++ b/ngforms.py @@ -8,17 +8,18 @@ class Form(object): field_values = {} - def build(self, form_name='f'): + def build(self, form_name='f', submit_func='submit', try_submit_func=''): self.form_name = form_name + self.try_submit_func = try_submit_func fields = ''.join([f.build(self) for f in self.fields]) return """
+ ng-init="%s.val = false;" ng-submit="%s.$valid && %s()">
%s
- """ % (form_name, form_name, form_name, fields) + """ % (form_name, form_name, form_name, submit_func, fields) def validate(self): request = webapp2.get_request() @@ -261,10 +262,15 @@ def build(self, form): attrs = { "label": self.label, } + + if len(form.try_submit_func) > 0: + t = '%s(); ' % form.try_submit_func + else: + t = '' submit = '''
-