2010-06-02 260 views
2

我使用下面的選擇器從表 內的輸入中獲取值,但它無法正常工作?Jquery Selectors not working

var kom =$("tr#1 .b input").attr(value); 

和行看起來遵循

<tr class="numbers" id="1"> 
    <td class="a" align="right">1</td> 
    <td class="a" align="left">Tue</td> 
    <td class="b"><input class="input" type="text" title="" value=""/></td> 
    <td class="c"><input class="input" type="text" title="" value=""/></td> 
    <td class="d"><input class="input" type="text" title="" value=""/></td> 
    <td class="e"><input class="input" type="text" title="" value=""/></td> 
    <td class="f">0</td> 
    <td class="g"><input class="input" type="text" title="" value=""/></td> 
</tr> 

什麼我可能是做錯了 任何建議任何援助是極大的讚賞

問候 breezer

回答

7

兩個位置的問題,首先你的ID應該以數字開頭,使用前綴,如row1,然後使用.val()獲得的價值,就像這樣:

var kom =$("tr#row1 .b input").val(); 

如果你要使用.attr(),您可以像這樣使用它.attr('value'),目前它正在尋找.attr(undefined)。我把它放在斜體中,因爲你幾乎總是使用.val()來獲得或設置一個值<input> ...同樣適用於<select><textarea>

+0

我認爲「你的ID應該以數字開頭」應改爲「你的ID應該** **不開始與數字」? – 2010-06-02 23:45:30

+0

@Stephen - 哎呀,很好的接收,謝謝:) – 2010-06-02 23:48:04

+0

爲id規則+1,但指定tr是多餘的。 – edl 2010-06-02 23:48:09

5

嘗試把在引號中。

2

訪問DOM的value屬性可能有點時髦。試試這個:

var kom =$("tr#1 .b input").val(); 
0

$("tr#1 .b input").attr("value");

關注,你有沒有在 「值」 括號內的值。

0

這是你想要什麼:

VAR柑= $( 「B輸入端」)VAL();

0
var kom =$("tr#1 .b input").attr("value") 

或更好

var kom =$("tr#1 .b input").val();