1)最初のテキストボックスが埋められた場合、3つのテキストボックスがあります。2番目はDBから自動的に更新され、3番目に埋めるために追加されます。
2)ただし、3番目のテキストボックスが選択されている場合、2番目はDBから自動的に更新され、3番目と2番目を引いて1番目のテキストボックスを埋めます。
<td>Sending Amount</td>
<td><input class="txt" type="text" name="txt" id = "sending"/></td>
<td>Charge</td>
<td><input class="txt" type="text" name="txt" id = "charge"/></td>
<td>Total Amount</td>
<td><input class="txt" type="text" name="txt" id = "totalAmount"/></td>
</tr>
$(function () {
var sending = $('input:text[id$=sending]').keyup(foo);
var charge = $('input:text[id$=charge]').keyup(foo);
var totalAmount = $('input:text[id$=totalAmount]').keyup(foo);
function foo() {
var value1 = sending.val();
var value2 = charge.val();
var sum = add(value1, value2);
$('input:text[id$=totalAmount]').val(sum);
var sub = sub(value1, value2);
$('input:text[id$=sending]').val(sub);
}
function add() {
var sum = 0;
for (var i = 0, j = arguments.length; i < j; i++) {
if (IsNumeric(arguments[i])) {
sum += parseFloat(arguments[i]);
}
}
return sum;
}
function sub()
{
var sub= 0;
***//need to create subtract function***
}
return sub;
}
function IsNumeric(input) {
return (input - 0) == input && input.length > 0;
}
});
</script>
加算は正常に機能しています減算は正しい値を表示していません。
以下のスクリプトを試してみましたが、足し算と引き算はあると思います。
<script type="text/javascript">
$(function () {
var sending = $('input:text[id$=sending]').keyup(foo);
var charge = $('input:text[id$=charge]').keyup(foo);
var totalAmount = $('input:text[id$=totalAmount]').keyup(foo);
function foo() {
var value1 = sending.val();
var value2 = charge.val();
if(IsNumeric(value2)){
if(IsNumeric(value1)){
var value3 = parseFloat(value1) + parseFloat(value2);
$('input:text[id$=totalAmount]').val(value3);
}}
value3 = totalAmount.val();
if(IsNumeric(value3)){
if(IsNumeric(value2)){
value1 = parseFloat(value3) - parseFloat(value2);
$('input:text[id$=sending]').val(value1);
}}
}
function IsNumeric(input) {
return (input - 0) == input && input.length > 0;
}
});