ajaxSubmit-integration-demo.html 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Test for jQuery validate() plugin</title>
  6. <link rel="stylesheet" media="screen" href="css/screen.css">
  7. <style>
  8. .warning {
  9. color: red;
  10. }
  11. </style>
  12. <script src="../lib/jquery.js"></script>
  13. <script src="../lib/jquery.mockjax.js"></script>
  14. <script src="../lib/jquery.form.js"></script>
  15. <script src="../dist/jquery.validate.js"></script>
  16. <script>
  17. jQuery(function() {
  18. $.mockjax({
  19. url: "login.action",
  20. response: function(settings) {
  21. var user = settings.data.match(/user=(.+?)($|&)/)[1],
  22. password = settings.data.match(/password=(.+?)($|&)/)[1];
  23. if (password !== "foobar") {
  24. this.responseText = "Your password is wrong (must be foobar).";
  25. return;
  26. }
  27. this.responseText = "Hi " + user + ", welcome back.";
  28. },
  29. responseStatus: 200,
  30. responseTime: 500
  31. });
  32. // show a simple loading indicator
  33. var loader = jQuery('<div id="loader"><img src="images/loading.gif" alt="loading..."></div>')
  34. .css({
  35. position: "relative",
  36. top: "1em",
  37. left: "25em",
  38. display: "inline"
  39. })
  40. .appendTo("body")
  41. .hide();
  42. jQuery().ajaxStart(function() {
  43. loader.show();
  44. }).ajaxStop(function() {
  45. loader.hide();
  46. }).ajaxError(function(a, b, e) {
  47. throw e;
  48. });
  49. var v = jQuery("#form").validate({
  50. submitHandler: function(form) {
  51. jQuery(form).ajaxSubmit({
  52. target: "#result"
  53. });
  54. }
  55. });
  56. jQuery("#reset").click(function() {
  57. v.resetForm();
  58. });
  59. });
  60. </script>
  61. </head>
  62. <body>
  63. <h1 id="banner"><a href="https://jqueryvalidation.org/">jQuery Validation Plugin</a> Demo</h1>
  64. <div id="main">
  65. <form method="post" class="cmxform" id="form" action="login.action">
  66. <fieldset>
  67. <legend>Login Form (Enter "foobar" as password)</legend>
  68. <p>
  69. <label for="user">Username</label>
  70. <input id="user" name="user" title="Please enter your username (at least 3 characters)" class="required" minlength="3">
  71. </p>
  72. <p>
  73. <label for="pass">Password</label>
  74. <input type="password" name="password" id="password" class="required" minlength "5">
  75. </p>
  76. <p>
  77. <input class="submit" type="submit" value="Login">
  78. </p>
  79. </fieldset>
  80. </form>
  81. <div id="result" class="warning">Please login!</div>
  82. <br>
  83. <button id="reset">Programmatically reset above form!</button>
  84. <a href="index.html">Back to main page</a>
  85. </div>
  86. </body>
  87. </html>