2017-09-14 160 views
1

我試圖返回屬性「值」的每個索引的HTML,根據jQuery DOM Manipulation Documentation我應該能夠使用.val()爲了返回這個,但是當我打印到控制檯,我得到一個空白值。使用.html()我可以返回清楚地顯示值在那裏的HTML部分。所以,我的問題是:jQuery .val()測試返回空白

我如何獲得值屬性作爲一個真正的值與空白。

請看我Fiddle

的Javascript

$("table#Table tr").each(function(i) { 
    $("td", this).each(function(j) { 
    var test = $(this).val() 
    console.log("".concat("row: ", i, ", col: ", j, ", value: ", test)); 
    }); 
}); 
+0

一個'td'沒有'value'。 –

+3

這是沒有理由讓他失望,他在這裏學習,問題是適當的。 –

回答

2

值不是沒有它的TD元素和TD的有效屬性。你需要找到在TD輸入元素,然後拿到value.something這樣的:

$("td input", this).each(function(j) { 
    var test = $(this).val() 
    console.log("".concat("row: ", i, ", col: ", j, ", value: ", test)); 
}); 

Working Demo

+0

太棒了,我沒有意識到,仍然在學習元素及其屬性。 –

+0

@TylerCowan:很高興它有幫助:) –

2

<td>元素沒有值。但是他們內部的投入呢。它看起來像你只需要使用"td input"的選擇,而不是僅僅"td"

$("td input", this).each(function(j) { 
    //... 
}); 

Updated fiddle

+0

'this'在這裏做什麼? – mrid

+2

@mrid:它將上下文添加到選擇器。因此,選擇器正在尋找''td input''匹配,但僅*在'this'的上下文中。在這種情況下,'this'應該是在前一行迭代的'tr'元素。 – David