我使用jQuery遍歷在DOM元素之間跳轉。jQuery遍歷。查找包括它自己的兄弟姐妹
的我第一次擁有的onClick功能:
$(document).on('keyup', '.size, .ant', function(){
在這個函數中我發送關於被點擊的東西,另一個函數的數據。
sulorTableRowWeight($(this));
function sulorTableRowWeight(thisobj){
現在,我想遍歷單擊元素$(this)
到它的父項。我想找到父母的兄弟姐妹,然後往下走到一個特定的兄弟姐妹。
var inputSize = $(thisobj).parent().siblings('.sizeTd').children('.size');
我的問題是,當我要回落到我的,不列爲同級傳來元素遍歷,因爲它不是一個兄弟姐妹......
var inputSize = $(thisobj).parent().siblings(); console.log(inputSize)
控制檯會給我的兄弟姐妹,但不是一個U來自...
因此,當用戶點擊「。尺寸」我想遍歷到父母和回到大小... 。當用戶點擊「.ant」我想trav ERSE到父,然後下調至「.size」 ......
我試圖硬編碼的穿越:
var inputSize = $(thisobj).parent().siblings('.sizeTd').children('.size');
但它不會工作,因爲它並不是一個真正的兄弟。
那是什麼?我怎樣才能回到它呢?
如果這是不可能的,我必須運行一些if/else語句,U猜...
UPDATE
$(document).on('keyup', '.size, .ant', function(){
//Find changed <select> .tbody
var tbodyId = $(this).parent().parent('tr').parent('tbody').attr('id');
//Check <tbody> #id
if(tbodyId === "cpTableBody"){
}
else if(tbodyId === "sulorTableBody"){
sulorTableRowWeight($(this));
}
else if(tbodyId === "konturTableBody"){
konturTableRowWeight($(this));
}
else if(tbodyId === "kantbalkTableBody"){
kantbalkTableRowWeight($(this));
}
})
//Function sulorTableRowWeight
function sulorTableRowWeight(thisobj){
//Find the selected data-weight
var selectedWeightmm3 = $(thisobj).parent().siblings('.selectTd').children('.select').find(':selected').data('weightmm3');
//Find input .size value
var inputSize = $(thisobj).parent().siblings('.sizeTd').children('.size'); console.log(inputSize)
問題
我的VAR inputSize
將返回undefined當我點擊一個「.size」元素。這是因爲它沒有被列爲自己的兄弟姐妹。
我知道這KEYUP,不要點擊...
這是一個快速減去..請告訴我爲什麼請嗎? –
我不確定我是否理解你的問題......但如果你想記住兄弟姐妹,你必須將它存儲在某個地方。如果父母有多個兄弟姐妹,那麼沒有明顯的辦法可以回到原來的兄弟姐妹身上。 – NutellaAddict
@madalinivascu這個解釋是如何解釋的? –