2011-08-09 73 views
-2

即時通訊設法得到這個輸入的父母,但它只是不會,我最多得到的標籤。我即將做錯了什麼?我該如何找到父母?

<div class="input req"> 

      <p> 
       <label>     
        <%= Html.TextBoxFor(model => model.Street, new { TABINDEX = 1,data_validate = "required|min[2]" })%> 
       </label> 
      </p> 

      <p class="msg"> 
      </p> 

     </div> 

JQUERY

alert($('#Street').parent('div.input').length); 

編輯:我要補充,這是在ThickBox所有的工作,我也得到長度爲1,如果我拿parent('label')

EDIT2:錯過了這個鏈接,從而使發佈 How to find a parent with a known class in JQuery?

-2減去什麼?

+2

請顯示生成的HTML。 – JJJ

+0

嘗試並將其更改爲提醒($('#Street')。parents('div.input')。length); – Sleeperson

+0

http://stackoverflow.com/questions/5333426/how-to-find-a-parent-with-a-known-class-in-jquery的可能重複 – yokoloko

回答

0
alert($('#Street').parents('div.input').length); 
         ^

parent()將上升一個級別,而另一方面.parents()直到選擇匹配就上去了。

就你而言,直接父母是元素p,而不是div.input

1
alert($('#Street').parents('div.input:first').length); 

這是類似的:

alert($('#Street').closest('div.input').length); 

父母只是看眼前的父母。您應該使用上述方法中的一種,而不是

0

嘗試

alert($('#Street').closest('div.input').length); 
0

嘗試

alert($('#Street').parent('label').parent('p').parent('div.input').length); 

家長只着眼於它上面的元素directy,這樣,你採取必要爬DOM的步驟樹。