title: Honeypot implementation
body: <p>Trying to filter out spam from an online form.  I have a hidden div with an input.  The idea  is that if something goes into the field, the form will ID the user as a bot and reject the submission.  After trying to implement this method, the bots are still getting through.  I'm not very familiar with javascript (or spam-filtration, for that matter) - here's what I'm working with:</p>
  
  <p>html (within the form):</p>
  
  <pre><code>&lt;form action="#" method='post' id='vsurvey' name='defer'&gt;
  &lt;div id="hp-div"&gt;
      If you see this, leave this form field blank 
      and invest in CSS support.
      &lt;input type="text" name="question_20579" value="" /&gt;
  &lt;/div&gt;
  &lt;input type="submit" value="Submit Request" /&gt;
  &lt;/form&gt;
  </code></pre>
  
  <p>css:</p>
  
  <pre><code>#hp-div { display: none }
  </code></pre>
  
  <p>js:</p>
  
  <pre><code>&lt;script type="text/javascript" charset="ISO-8859-1" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"&gt;&lt;/script&gt;
  
  &lt;script type="text/javascript" charset="ISO-8859-1" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"&gt;&lt;/script&gt;
  
  &lt;script type="text/javascript"&gt;
  if(!String.IsNullOrEmpty(Request.Form["question_20579"]))
    IgnoreComment();
  &lt;/script&gt;
  
  &lt;![if !IE]&gt;
      &lt;script type="text/javascript"&gt; 
          $(document).ready(function(){
              $("#vsurvey").validate({
                  invalidHandler: function(form, validator) {
                      var errors = validator.numberOfInvalids();
                      if (errors) {
                          var message = errors == 1 
                              ? 'Oops! You missed 1 field. It has been highlighted' 
                              : 'Oops! You missed ' + errors + ' fields. They have been highlighted below';
                          $("div.alert span").html(message);
                          $("div.alert").show();
                      } else {
                          $("div.alert").hide();
                      }
                  },
                  errorPlacement: function(error, element) { 
                      return true; 
                  }
              })
          }); 
      &lt;/script&gt;
  &lt;![endif]&gt;
  </code></pre>