title: ASP.NET MVC Unobtrusive validation not working on IE9
body: <p>I am working on code written by someone else.
  Its a Reset Password form. The current client side validation works on most browsers including IE 10 and IE 11. On IE 9 the Confirm Password does not match error keeps getting displayed even though I am sure I am typing the exact same thing in both fields.
  The code:</p>
  
  <pre><code>&lt;div class="form-group"&gt;
          &lt;div class="input-group input-phone"&gt;
              &lt;span class="input-group-addon"&gt;&lt;span class="glyphicon glyphicon-lock"&gt;&lt;/span&gt;&lt;/span&gt;
              &lt;input type="password" id="Password" name="Password" class="form-control input-lg default-focus" data-val="true" data-val-required="Password is required." placeholder="Password" autocomplete="off"&gt;
          &lt;/div&gt;
          &lt;div class="field-validation-valid" data-valmsg-for="Password" data-valmsg-replace="true"&gt;&lt;/div&gt;
      &lt;/div&gt;
  
      &lt;div class="form-group form-group-login-bottom"&gt;
          &lt;div class="input-group input-pin"&gt;
              &lt;span class="input-group-addon"&gt;&lt;span class="glyphicon glyphicon-lock"&gt;&lt;/span&gt;&lt;/span&gt;
              &lt;input type="password" id="ConfirmPassword" name="ConfirmPassword" class="form-control input-lg" data-val="true" data-val-equalto="Confirm Password does not match." data-val-equalto-other="*.Password" placeholder="Confirm Password" autocomplete="off"&gt;
          &lt;/div&gt;
          &lt;div class="field-validation-valid" data-valmsg-for="ConfirmPassword" data-valmsg-replace="true"&gt;&lt;/div&gt;
      &lt;/div&gt;
  </code></pre>
  
  <p>I searched a lot yesterday but none of the solution seems to work.
  I tried: updating the jquery.validate.js and jquery.validate.unobtrusive.js files.</p>
  
  <p>I tried debugging, in the jquery.validate.js file, this snippet,</p>
  
  <pre><code>// http://docs.jquery.com/Plugins/Validation/Methods/equalTo
      equalTo: function( value, element, param ) {
          // bind to the blur event of the target in order to revalidate whenever the target field is updated
          // TODO find a way to bind the event just once, avoiding the unbind-rebind overhead
          var target = $(param);
          if ( this.settings.onfocusout ) {
              target.unbind(".validate-equalTo").bind("blur.validate-equalTo", function() {
                  $(element).valid();
              });
          }
          return value === target.val();
      },
  </code></pre>
  
  <p><strong>target</strong> is the input field with <code>id Password</code>. On IE 10 and IE 11, alerting <code>target.val()</code>
  returns the correct value of type in. On IE 9 it returns empty. Cannot figure out why it does not work on IE 9 specifically. Any suggestions would be helpful.</p>