Form2 - without this.optional(element)

Form validation

by Morteza Mirmojarabian

HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.16.0/jquery.validate.min.js"></script>
<form action="" method="POST" id="sampleForm">
  <p>
    <input type="text" name="entry.0.single" value="Name *" class="required noName" id="entry1">
  </p>
  <p>
    <input type="text" name="entry.1.single" value="Email" class="customEmail" id="entry2">
  </p>
  <p>
    <input type="submit" name="submit" value="Submit">
  </p>
</form>

JavaScript

$(document).ready(function() {
    $("#entry1, #entry2").focus(function() {
      if (this.value == this.defaultValue) {
        $(this).val("");
      }
    }).blur(function() {
      if (!this.value.length) {
        $(this).val(this.defaultValue);
      }
    });
    jQuery.validator.addMethod("noName", function(value, element) {
      return value != element.defaultValue;
    }, "Please enter your name.");
    jQuery.validator.addMethod("customEmail", function(value, element) {
      return element.value === element.defaultValue ||
        $.validator.methods.email.call(this, value, element);
    }, $.validator.messages.email);
    $("#sampleForm").validate();
  });