給出了一系列形式的標籤和輸入元素,如中:jQuery選擇了.parent()父()
<div class="labelEditwrap">
<div class="editor-label">
<label for="Address">Address</label>
</div>
<div class="editor-field">
<input class="text-box single-line" id="Address" name="Address" type="text" value="" />
<span class="field-validation-valid" data-valmsg-for="Address"></span>
</div>
</div>
我想選擇最外層div時文本框獲得焦點,所以我可以突出顯示標籤和輸入:
$("input").focus(function() {
$(this).parent().parent().addClass("curFocus")
});
我試過幾個的組合,包括:
$(this).parent().parent() // seems the most obvious
$(this).parent().parents("div:first")
另外這裏的問題king關於.parent()。parent()是通過查找與選擇器無關的語法錯誤來解決的。然而,在這種情況下,如果我只上升一個父級別(只突出顯示編輯的div),並且如果爬上3個級別(突出顯示容納完整表單的容器),則可以看到我的hightlighter類。
thx
確定....它不是選擇器。所有建議的替代品(和原始)都正確地「選擇」外部包裝div。問題在於CSS以及Floats如何應用於Label和Editor div。這個CSS會產生正確的突出顯示,並讓標籤/編輯器字段正確對齊。 [whew]
你們最好的方式來關閉/編輯/改變問題,希望幫助其他人避免我的4小時toddshooting磨難考驗。
- 高度欣賞的時間位置抽取─
[JQuery的父()選擇器]的可能重複(http://stackoverflow.com/questions/7996157/jquery-parent-selector) –
行....它不是選擇器。所有建議的替代品(和我的原始)都正確地'選擇'外部包裝div。問題是浮動如何應用到標籤和編輯器div: – justSteve