PageRenderTime 67ms CodeModel.GetById 31ms RepoModel.GetById 0ms app.codeStats 0ms

/ajax/libs/jquery-form-validator/2.1.47/form-test.html

https://gitlab.com/Blueprint-Marketing/cdnjs
HTML | 346 lines | 304 code | 42 blank | 0 comment | 0 complexity | 40e533f16e1b4340b46e164618957da9 MD5 | raw file
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Form Test</title>
  6. <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0-wip/css/bootstrap.min.css" />
  7. <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/black-tie/jquery-ui.css" />
  8. <style>
  9. /* Form and inputs */
  10. form {
  11. width: 500px;
  12. margin: 0 auto;
  13. padding: 20px;
  14. display: block;
  15. }
  16. input.form-control {
  17. width: 375px;
  18. }
  19. /* While server is being requested */
  20. form.validating-server-side {
  21. background: #F2F2F2;
  22. }
  23. input.validating-server-side {
  24. opacity: 0.5;
  25. background: lightgoldenrodyellow;
  26. }
  27. /* modify inputs for password strength */
  28. .password-strength input.form-control {
  29. width: 375px;
  30. margin-right: 4px;
  31. display: inline;
  32. }
  33. .password-strength label {
  34. display: block;
  35. }
  36. /* Checkboxes */
  37. .form-group.check-boxes input {
  38. margin-left: 10px;
  39. }
  40. span.help {
  41. color: #999 !important;
  42. }
  43. /* Error container for form C */
  44. #error-container div {
  45. color: red;
  46. line-height: 140%;
  47. }
  48. #error-container div:last-child {
  49. padding-bottom: 10px;
  50. }
  51. </style>
  52. </head>
  53. <body>
  54. <div>
  55. <form action="" id="form-a" role="form">
  56. <div class="form-group">
  57. <label class="control-label" for="inline-suggestions">Inline suggestions</label>
  58. <input name="inline suggestions" type="text" id="inline-suggestions" class="form-control" data-suggestions="Monkey, Horse, Fox, Tiger, Elephant" />
  59. </div>
  60. <div class="form-group">
  61. <label class="control-label" for="country-suggestions">Country suggestions</label>
  62. <input name="country suggestions" data-validation="country" type="text" id="country-suggestions" class="form-control" />
  63. </div>
  64. <div class="form-group">
  65. <label class="control-label" for="country-suggestions">Swedish county suggestions</label>
  66. <input name="Swedish county suggestion" data-validation="swecounty" type="text" id="swedish-county-suggestions" class="form-control" />
  67. </div>
  68. <div class="form-group">
  69. <label class="control-label">Year</label>
  70. <input name="birth" class="form-control"
  71. data-validation="date"
  72. data-validation-format="yyyy-mm-dd"
  73. data-suggestions="2014-01-15,2014-01-16,2014-01-17" />
  74. </div>
  75. <div class="form-group">
  76. <label class="control-label">Datepicker</label>
  77. <input name="birth2" class="form-control"
  78. data-validation="date"
  79. data-validation-format="mm/dd/yyyy"
  80. id="datepicker" />
  81. </div>
  82. <div class="form-group">
  83. <label class="control-label">Number 0-10 (accepting floats)</label>
  84. <input name="floats" class="form-control"
  85. data-validation="number"
  86. data-validation-allowing="range[0;10], float"
  87. data-validation-decimal-separator=","
  88. />
  89. </div>
  90. <div class="form-group password-strength">
  91. <label class="control-label" for="password">Display password strength (only strong)</label>
  92. <input name="password" type="password" id="password" class="form-control" data-validation="strength" data-validation-strength="3" />
  93. </div>
  94. <div class="form-group">
  95. <label class="control-label">Alphanumeric and -_ and spaces</label>
  96. <input name="alphanumeric with spaces" class="form-control" name="test" data-validation="alphanumeric" data-validation-allowing="-_ " />
  97. </div>
  98. <div class="form-group">
  99. <label class="control-label">Alphanumeric only</label>
  100. <input name="aplhanumeric only" class="form-control" name="test2" data-validation="alphanumeric" />
  101. </div>
  102. <div class="checkbox">
  103. <label>
  104. <input name="checkbox" type="checkbox" data-validation="required" /> Must be checked
  105. </label>
  106. </div>
  107. <div class="form-group">
  108. <label class="control-label">Even numbers only</label>
  109. <input name="even numbers" class="form-control" name="test4" data-validation="even_number" />
  110. </div>
  111. <div class="form-group">
  112. <label class="control-label">Make a choice</label>
  113. <br />
  114. <select name="choice" data-validation="required" data-validation-error-msg="Please make a choice">
  115. <option value="">- - Choose - -</option>
  116. <option>A</option>
  117. <option>B</option>
  118. <option>C</option>
  119. <option>D</option>
  120. </select>
  121. </div>
  122. <div class="form-group">
  123. <label class="control-label">Text</label>
  124. (<span id="max-len">20</span> chars left)<br />
  125. <textarea id="text-area" class="form-control" name="some-text"></textarea>
  126. </div>
  127. <div class="form-group">
  128. <label class="control-label">Server validation</label>
  129. <input class="form-control" name="code"
  130. data-validation-help="The word is &quot;secret&quot;"
  131. data-validation="alphanumeric server"
  132. data-validation-url="http://formvalidator.net/validate-email.php" />
  133. </div>
  134. <div class="form-group">
  135. <label class="control-label">File validation</label>
  136. <input type="file" name="some-file1" class="form-control"
  137. data-validation="size mime required"
  138. data-validation-error-msg="You must upload an image file"
  139. data-validation-allowing="jpg, png, ico"
  140. data-validation-max-size="100kb" />
  141. </div>
  142. <div class="form-group">
  143. <label class="control-label">File validation (multiple)</label>
  144. <input type="file" multiple="multiple" name="some-file2" class="form-control"
  145. data-validation="size mime required length"
  146. data-validation-length="min2"
  147. data-validation-error-msg="You must upload at least two image files"
  148. data-validation-allowing="jpg, png, ico"
  149. data-validation-max-size="100kb" />
  150. </div>
  151. <div class="form-group">
  152. <label class="control-label">
  153. Callback validation, set this value to &quot;1&quot; and
  154. validation will fail
  155. </label>
  156. <input id="callback" class="form-control" />
  157. </div>
  158. <div class="form-group check-boxes">
  159. <label>Checkbox group</label><br />
  160. <label>
  161. <input type="checkbox" name="box" value="1"
  162. data-validation="checkbox_group"
  163. data-validation-qty="1-2" /> 1
  164. </label>
  165. <label>
  166. <input type="checkbox" name="box" value="2" /> 2
  167. </label>
  168. <label>
  169. <input type="checkbox" name="box" value="3" /> 3
  170. </label>
  171. <label>
  172. <input type="checkbox" name="box" value="4" /> 4
  173. </label>
  174. <label>
  175. <input type="checkbox" name="box" value="5" /> 5
  176. </label>
  177. </div>
  178. <p>
  179. <input type="submit" class="button">
  180. <input type="reset" class="button">
  181. </p>
  182. </form>
  183. <hr />
  184. <form id="form-b">
  185. <div class="form-group">
  186. <label class="control-label">Test</label>
  187. <input name="test" data-validation="number" type="text" />
  188. </div>
  189. <p>
  190. <input type="submit" class="button">
  191. <input type="reset" class="button">
  192. </p>
  193. </form>
  194. <hr />
  195. <form id="form-c">
  196. <div class="form-group">
  197. <label class="control-label">Country</label>
  198. <input name="test" data-validation="country" data-validation-error-msg="No valid country given" />
  199. </div>
  200. <div class="form-group">
  201. <label class="control-label">E-mail</label>
  202. <input name="test" data-validation="email" data-validation-error-msg="E-mail is not valid" />
  203. </div>
  204. <div class="form-group">
  205. <label class="control-label">Alphanumeric (will only be validated if the checkbox is checked)</label>
  206. <input name="test2"
  207. data-validation="alphanumeric"
  208. data-validation-error-msg="Invalid..."
  209. data-validation-if-checked="checker" />
  210. <br />
  211. <input type="checkbox" name="checker" />
  212. </div>
  213. <div id="error-container">
  214. </div>
  215. <p>
  216. <input type="submit" class="button">
  217. <input type="reset" class="button">
  218. </p>
  219. </form>
  220. </div>
  221. <script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
  222. <script src="//code.jquery.com/ui/1.10.4/jquery-ui.min.js"></script>
  223. <script src="jquery.form-validator.js"></script>
  224. <script>
  225. (function($, window) {
  226. var dev = window.location.hash.indexOf('dev') > -1 ? '.dev' : '';
  227. // setup datepicker
  228. $("#datepicker").datepicker();
  229. // Add a new validator
  230. $.formUtils.addValidator({
  231. name : 'even_number',
  232. validatorFunction : function(value, $el, config, language, $form) {
  233. return parseInt(value, 10) % 2 === 0;
  234. },
  235. borderColorOnError : '',
  236. errorMessage : 'You have to give an even number',
  237. errorMessageKey: 'badEvenNumber'
  238. });
  239. window.applyValidation = function(validateOnBlur, forms, messagePosition) {
  240. if( !forms )
  241. forms = 'form';
  242. if( !messagePosition )
  243. messagePosition = 'top';
  244. $.validate({
  245. form : forms,
  246. language : {
  247. requiredFields: 'Du måste bocka för denna'
  248. },
  249. validateOnBlur : validateOnBlur,
  250. errorMessagePosition : messagePosition,
  251. scrollToTopOnError : true,
  252. borderColorOnError : 'purple',
  253. modules : 'security'+dev+', location'+dev+', sweden'+dev+', file'+dev+', uk'+dev,
  254. onModulesLoaded: function() {
  255. $('#country-suggestions').suggestCountry();
  256. $('#swedish-county-suggestions').suggestSwedishCounty();
  257. $('#password').displayPasswordStrength();
  258. },
  259. onValidate : function($f) {
  260. console.log('about to validate form '+$f.attr('id'));
  261. var $callbackInput = $('#callback');
  262. if( $callbackInput.val() == 1 ) {
  263. return {
  264. element : $callbackInput,
  265. message : 'This validation was made in a callback'
  266. };
  267. }
  268. },
  269. onError : function($form) {
  270. if( !$.formUtils.haltValidation ) {
  271. alert('Invalid '+$form.attr('id'));
  272. }
  273. },
  274. onSuccess : function($form) {
  275. alert('Valid '+$form.attr('id'));
  276. return false;
  277. }
  278. });
  279. };
  280. $('#text-area').restrictLength($('#max-len'));
  281. window.applyValidation(true, '#form-a', 'element');
  282. window.applyValidation(false, '#form-b', 'element');
  283. window.applyValidation(true, '#form-c', $('#error-container'));
  284. // Load one module outside $.validate() even though you do not have to
  285. $.formUtils.loadModules('date'+dev+'.js', false, false);
  286. $('input')
  287. .on('beforeValidation', function() {
  288. console.log('About to validate input "'+this.name+'"');
  289. })
  290. .on('validation', function(evt, isValid) {
  291. var validationResult = '';
  292. if( isValid === null ) {
  293. validationResult = 'not validated';
  294. } else if( isValid ) {
  295. validationResult = 'VALID';
  296. } else {
  297. validationResult = 'INVALID';
  298. }
  299. console.log('Input '+this.name+' is '+validationResult);
  300. });
  301. })(jQuery, window);
  302. </script>
  303. <body>
  304. </html>