title: closest() not returning the closest label to my input
body: <p>I need to select the label which is above my input and get its text.</p>
  
  <p>Sometimes it is like that :</p>
  
  <pre><code>&lt;div id="q1"&gt;
      &lt;label class="question_label"&gt;Label q1&lt;/label&gt;
      &lt;input type ="text"&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>Sometimes like that:</p>
  
  <pre><code>&lt;div id="q2"&gt;
      &lt;label class="question_label"&gt;Label q2&lt;/label&gt;
      &lt;br&gt;
      &lt;input type ="text"&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>I have tied with <code>prev()</code> but sometimes there is a <code>&lt;br&gt;</code> between the input and the label, so prev doesn't always work.
  I also tried with <code>closest()</code> but it doesn't return the label:</p>
  
  <pre><code>$(':input').each(function () {
      alert($(this).closest('label').text());
  });
  </code></pre>
  
  <p>What's wrong in my code ?</p>