L: neue Funktion ajax_submit_tag()
authorMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 13 Mar 2013 16:49:02 +0000 (17:49 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Wed, 13 Mar 2013 16:56:55 +0000 (17:56 +0100)
SL/Template/Plugin/L.pm

index b6021f5..1ffe22d 100644 (file)
@@ -185,6 +185,16 @@ sub button_tag {
   return $self->html_tag('input', undef, %attributes, value => $value, onclick => $onclick);
 }
 
+sub ajax_submit_tag {
+  my ($self, $url, $form_selector, $text, @slurp) = @_;
+
+  $url           = _J($url);
+  $form_selector = _J($form_selector);
+  my $onclick    = qq|submit_ajax_form('${url}', '${form_selector}')|;
+
+  return $self->button_tag($onclick, $text, @slurp);
+}
+
 sub yes_no_tag {
   my ($self, $name, $value) = splice @_, 0, 3;
   my %attributes            = _hashify(@_);
@@ -577,6 +587,14 @@ be added via the C<onclick> handler asking the question given with
 C<$attributes{confirm}>. The request is only submitted if the user
 clicks the dialog's ok/yes button.
 
+=item C<ajax_submit_tag $url, $form_selector, $text, %attributes>
+
+Creates a HTML 'input type="button"' tag with a very specific onclick
+handler that submits the form given by the jQuery selector
+C<$form_selector> to the URL C<$url> (the actual JavaScript function
+called for that is C<submit_ajax_form()> in C<js/client_js.js>). The
+button's label will be C<$text>.
+
 =item C<button_tag $onclick, $text, %attributes>
 
 Creates a HTML 'input type="button"' tag with an onclick handler