[jQuery] Re: (validation) Validation plugin submitHandler

2009-11-12 Thread mcrawford
Right, thanks. I mentioned that in my initial post.

But if I rename the submit-button, if you click the Cancel button,
that value of cancel=Cancel will not get sent in the post.

Any ideas why?

On Nov 12, 2:05 pm, Jörn Zaefferer joern.zaeffe...@googlemail.com
wrote:
 Use a different name for the submit-button. Using name=submit you override
 the actual submit-function of the form. Keep in mind that in the DOM API,
 you can access any form element as a property of the form, referenced by
 name.

 Jörn

 On Thu, Nov 12, 2009 at 8:48 PM, mcrawford mcrawf...@gmail.com wrote:
  I'm totally stumped with the submitHandler. Here is my test page, down
  below. I'm using PHP just to print out the form variables but
  obviously you could adapt the HTML for anything.

  Notice that I have set my Submit button to have name=submit which
  means that, in the submitHandler, form.submit() is not a function. I
  get a JavaScript error on that line, but (and this is what I can't
  figure out), the form still submits.

  I can change the Submit button to have a different name, like
  name=sbmt. That avoids the JS error on the form.submit() line. But
  then (and I don't get this either), if you click the Cancel button,
  that value of cancel=Cancel will not get sent in the post. With the
  Submit button named submit the cancel=Cancel gets posted correctly
  when you click on that button.

  ?php
  if (!empty($_POST)) {
         print_r($_POST);
  }
  ?

  html xmlns=http://www.w3.org/1999/xhtml; xml:lang=en lang=en
         head
                 titleTEST/title
                 meta http-equiv=Content-Type content=text/html;
  charset=utf-8/
                 script type=text/javascript
  src=/js/jquery-1.3.2.js/script
                 script type=text/javascript src=/js/jquery-validate/
  jquery.validate.js/script
         /head
         body
                 form action=test-validate.php method=post
  id=the-form
                         input type=hidden name=hidden
  value=something/
                         input class=button type=submit name=submit
  value=Do it
  now!/
                         input class=button cancel type=submit
  name=cancel
  value=Cancel/
                 /form
                 script type=text/javascript
                         $(function() {
                                 // VALIDATION
                                 $(#the-form).validate({
                                         submitHandler: function(form) {
                                                 $('input[name=submit]',
  '#the-form').attr('disabled',
  'disabled');
                                                 form.submit();
                                         }
                                 });
                         });
                 /script
         /body
  /html




[jQuery] Re: (validation) Validation plugin submitHandler

2009-11-12 Thread mcrawford
Also, that doesn't explain why the form still submits when I call
form.submit(). Since submit is no longer a function, the form should
never get submitted in that case.

On Nov 12, 2:05 pm, Jörn Zaefferer joern.zaeffe...@googlemail.com
wrote:
 Use a different name for the submit-button. Using name=submit you override
 the actual submit-function of the form. Keep in mind that in the DOM API,
 you can access any form element as a property of the form, referenced by
 name.

 Jörn

 On Thu, Nov 12, 2009 at 8:48 PM, mcrawford mcrawf...@gmail.com wrote:
  I'm totally stumped with the submitHandler. Here is my test page, down
  below. I'm using PHP just to print out the form variables but
  obviously you could adapt the HTML for anything.

  Notice that I have set my Submit button to have name=submit which
  means that, in the submitHandler, form.submit() is not a function. I
  get a JavaScript error on that line, but (and this is what I can't
  figure out), the form still submits.

  I can change the Submit button to have a different name, like
  name=sbmt. That avoids the JS error on the form.submit() line. But
  then (and I don't get this either), if you click the Cancel button,
  that value of cancel=Cancel will not get sent in the post. With the
  Submit button named submit the cancel=Cancel gets posted correctly
  when you click on that button.

  ?php
  if (!empty($_POST)) {
         print_r($_POST);
  }
  ?

  html xmlns=http://www.w3.org/1999/xhtml; xml:lang=en lang=en
         head
                 titleTEST/title
                 meta http-equiv=Content-Type content=text/html;
  charset=utf-8/
                 script type=text/javascript
  src=/js/jquery-1.3.2.js/script
                 script type=text/javascript src=/js/jquery-validate/
  jquery.validate.js/script
         /head
         body
                 form action=test-validate.php method=post
  id=the-form
                         input type=hidden name=hidden
  value=something/
                         input class=button type=submit name=submit
  value=Do it
  now!/
                         input class=button cancel type=submit
  name=cancel
  value=Cancel/
                 /form
                 script type=text/javascript
                         $(function() {
                                 // VALIDATION
                                 $(#the-form).validate({
                                         submitHandler: function(form) {
                                                 $('input[name=submit]',
  '#the-form').attr('disabled',
  'disabled');
                                                 form.submit();
                                         }
                                 });
                         });
                 /script
         /body
  /html