我在訪問元素以驗證它時遇到問題。如何在javascript中訪問索引ID
例如,如果我從數據庫中生成一個動態表,我有一個看起來像這樣的代碼:
i=0;
while($row as values){
<input type='text' id='quantity[$i]' name='quantity[$i]' value=''>
<input type='text' id='quantity_req[$i]' name='quantity_req[$i]' value=''>
$i++;
}
<input type='hidden' id='i' name='i' value='$i'>
我可以用$('#i').val()
得到我的價值,但我怎麼能獲取文本字段的值?
$('#quantity[i]').val();
和$('#quantity[i]').val();
不起作用,javascript似乎認爲「#quantity [i]」是一個字符串,儘管我已通過for循環給出'i'值。
我也試過$('#quantity' +i).val()
,但它不工作。
其簡單的兄弟,要獲取文本字段的值,您需要通過classname/id提取文本字段。例如:-' $('#txt')。val();'其中#txt是文本字段的ID。 – dreamweiver 2013-04-29 14:43:53
實際上,字符串是JS爲什麼字符串插值不能很好地工作的一個很好的例子(至少沒有任何特殊的語法或格式)。你說*「儘管我通過for循環給出'我'一個值」*。所以你希望把''[i]''替換成''[0]''。但是,JavaScript如何知道它不應該取代'quantity'中的'i'?如果JS會替換變量,則結果字符串將是'#quant0ty [0]'。 – 2013-04-29 14:44:46
從[documentation](http://api.jquery.com/category/selectors/):*「使用任何元字符(如'!」#$%&'()* + ,./:; <=>?@ [\]^\'{|}〜')作爲名稱的文字部分,必須用兩個反斜槓進行轉義:''\\''。「* – 2013-04-29 14:46:51