我正在开展一个项目。我想减去begbal输入框和最近的amtcoll输入框的值,并将结果放在最近的endbal输入框上。
我的HTML代码是:
<tr>
<td><input type="number" name="amtcoll[]" id="amtcoll" class="form-control text-right" value="2000.00"></td>
<td><input type="number" name="begbal[]" id="begbal" class="form-control text-right" value="0.00"></td>
<td><input type="number" name="endbal[]" id="endbal" class="form-control text-right" value="0.00"></td>
</tr>
<tr>
<td><input type="number" name="amtcoll[]" id="amtcoll" class="form-control text-right" value="1000.00"></td>
<td><input type="number" name="begbal[]" id="begbal" class="form-control text-right" value="0.00"></td>
<td><input type="number" name="endbal[]" id="endbal" class="form-control text-right" value="0.00"></td>
</tr>
到目前为止我使用的JavaScript是:
<script type="text/javascript">
$(document).ready(function(){
$("input[name^=begbal]").change(function() {
$(this).closest("tr").find("input[name^=endbal]").value = $(this).closest("tr").find("input[name^=begbal]").value - $(this).closest("tr").find("input[name^=amtcoll]").value;
});
});
</script>
我想在输入的时候输入减法的结果将传递给最近的endbal。但最近的终端输入没有传递任何价值。请帮忙。我可以得到如何解决这个问题。感谢。
答案 0 :(得分:1)
要获取输入值,您需要使用val
而不是value
$("input[name^=begbal]").change(function () {
$(this).closest("tr").find("input[name^=endbal]").val( $(this).closest("tr").find("input[name^=begbal]").val() - $(this).closest("tr").find("input[name^=amtcoll]").val());
});
答案 1 :(得分:0)
请试试这个:
$(document).ready(function(){
jQuery("input[name^=begbal]").on('input', function() {
var amtVal = $(this).closest("tr").find("input[name^=amtcoll]").val();
var begalVal = $(this).closest("tr").find("input[name^=begbal]").val();
$(this).closest("tr").find("input[name^=endbal]").val(parseInt(begalVal - amtVal));
});
});
答案 2 :(得分:0)
它的价值 - 这是另一个,它避免了在DOM上下走得太远。注意 - 您不应该有两个具有相同ID的元素。
$(document).ready(function() {
$("input[class^=begbal]").change(function() {
var endbal = $(this).val() - $(this).prev('.amtcoll').val();
$(this).next('.endbal').val(endbal);
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tr>
<td>
<input type="number" name="amtcoll[]" class="amtcoll" class="form-control text-right" value="2000.00">
</td>
<td>
<input type="number" name="begbal[]" class="begbal" class="form-control text-right" value="0.00">
</td>
<td>
<input type="number" name="endbal[]" class="endbal" class="form-control text-right" value="0.00">
</td>
</tr>
<tr>
<td>
<input type="number" name="amtcoll[]" class="amtcoll" class="form-control text-right" value="1000.00">
</td>
<td>
<input type="number" name="begbal[]" class="begbal" class="form-control text-right" value="0.00">
</td>
<td>
<input type="number" name="endbal[]" class="endbal" class="form-control text-right" value="0.00">
</td>
</tr>
&#13;