我有这样的表
<table>
<tr>
<td>limit</td>
<td>price</td>
<td>aproved price</td>
</tr>
<tr>
<td><input id="limit_1" type="text" name="limit" value="200.000"></td>
<td><input id="price_1" type="text" onChange="getapprice()" name="price" value="300.000"></td>
<td><input id="appprice_1" type="text" name="appprice" value="200.000"></td>
</tr>
<tr>
<td><input id="limit_2" type="text" name="limit" value="250.000"></td>
<td><input id="price_2" type="text" onChange="getapprice()" name="price" value="150.000"></td>
<td><input id="appprice_2" type="text" name="appprice" value="150.000"></td>
</tr>
</table>
当我在列价格中插入值并且getapprice函数在价格低于列行和列价格的情况下给出结果时,较小的结果将显示在列价格批准中。
我一直在寻找,但没有找到相同的问题和答案。
答案 0 :(得分:1)
请尝试以下代码。
function getapprice(e)
{
var target = e.target;
var price = parseFloat($(target).val());
var row = $(target).closest("tr");
var limit = parseFloat(row.find("[name='limit']").val());
var app_price = price < limit ? price : limit;
row.find("[name='appprice']").val(app_price);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr><td>limit</td><td>price</td><td>aproved price</td></tr>
<tr><td><input id="limit_1" type="text" name="limit" value="200.000"></td>
<td><input id="price_1" type="text" onChange="getapprice(event)" name="price" value="300.000"></td>
<td><input id="appprice_1" type="text" name="appprice" value="200.000"></td></tr>
<tr><td><input id="limit_2" type="text" name="limit" value="250.000"></td>
<td><input id="price_2" type="text" onChange="getapprice(event)" name="price" value="150.000"></td>
<td><input id="appprice_2" type="text" name="appprice" value="150.000"></td></tr>
</table>
希望这会对你有所帮助。