1

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;
    }
});

4

1 に答える 1

0

2つのパラメータが存在する場合add()、なぜ関数が必要なのか、なぜ必要なのかsum = value1 + value2

同様にsub = value1 - value2、トリックを行う必要があります。

関数を使用する必要ある場合は、次のようなことを行うことができますsub

function sub(value1,value2) 
     {
        var sub= value1 - value2;
        return sub;
     }
于 2012-11-01T12:11:44.797 に答える