我想更改表格中的特定行,但是还有另一个<span>
。我想更改第一个范围中的值。
我的代码如下:
<table id="mytable">
<tr>
<th>Book_ID</th>
<th>Title</th>
<th>Price</th>
<th>Qty</th>
<th>Total</th>
</tr>
<tr>
<td>A001</td>
<td>my book</td>
<td>10000</th>
<td>
<span>3</span>
<span><a>delete</a></span>
<span>
<a href=# title="plus_qty"><img src="quantity_up.gif"></a>
</span>
<span>
<a href=# title="minus_qty"><img src="quantity_down.gif"></a>
</span>
</td>
<td>30000</td>
</tr>
</table>
在<span title="plus_qty">
中不删除<span title="minus_qty">
,<span>
或<td>
,我可以获取并更新数值。我的代码没有删除元素:
<table id="mytable">
<tr>
<th>Book_ID</th>
<th>Title</th>
<th>Price</th>
<th>Qty</th>
<th>Total</th>
</tr>
<tr>
<td>A001</td>
<td>my book</td>
<td>10000</th>
<td>3</td>
<td>30000</td>
</tr>
</table>
jQuery代码:
var row = $('#mytable').find('td');
for(i=0;i<row.length;i++){
if(row.eq(i).text() == 'A0001'){
row.eq(i+3).text(parseInt(row.eq(i+3).text())+1);
}
}
答案 0 :(得分:1)
试试这个:
var row = $('#mytable').find('td');
for(i=0;i<row.length;i++){
if(row.eq(i).text() == 'A0001'){
ch = row.eq(i+3).children(':first-child');
ch.text(parseInt(ch.text())+1);
}
}
请注意可能的拼写错误,在您的html代码中<td>A001</td>
,但在您的javascript中搜索A0001
这是一个不同的值,在我自己确定上述代码后。