0

ASP.net MVCコントローラーからJSONデータを取得し、それをループしてビューに表示します。

ここに画像の説明を入力してください

$(document).ready(function () {
var amount = 0;
var subTotal = 0;
var vat = 0;
var total = 0;
var qty = 0;
var urlSession = '<%: Url.Content("~/") %>' + "Quotation/ProductInSession";
$.getJSON(urlSession, function (dataQuote) {
    var i = dataQuote.ja.length;
    $.each(dataQuote.ja, function (index, data) {
        amount = data.ProductQty * data.ProductPrice;
        subTotal += amount;
        $("#listProduct tr#first_row").after('<tr style="height:25px;"><td class="tablecell2" width="40px" align="center">' + i + '</td><td class="tablecell2">' + data.ProductName + '</td><td class="tablecell2" width="70px" align="center"><input id="qty" type="text" value="' + data.ProductQty + '" size="2"/></td><td class="tablecell2" width="90px" align="right" style="padding-right:5px;">' + data.ProductPrice + '</td><td class="tablecell2" style="border-right:1px solid silver;padding-right:5px;" width="120px" align="right"><span id="amount">' + amount + '</span></td></tr>');
        i--;
        $('#qty').keypress(function (event) {
            var keycode = (event.keyCode ? event.keyCode : event.which);
            if (keycode == '13') {
                qty = $("#qty").val();

                $("#qty").html(qty);

                amount = qty * data.ProductPrice;
                $("#amount").html(amount);
            }
        });
    });
    vat = (subTotal * 10) / 100;
    total = subTotal + vat;
    $("#vvat").html("<b>" + vat + "</b>");
    $("#ssubtotal").html(subTotal);
    $("#sgrandtotal").html("<b>" + total + "</b>");
  });
});

私がしたいのは:

  1. Enterキーを押したときに、テキストボックスの値を変更します
  2. 金額の値を変更します(金額=数量* UnitPrice)

この更新またはこれ以外のものを処理するために、コントローラーの別のアクションを作成する必要があります。

誰もが私に与えることができるどんな助けにも感謝します!

The

4

1 に答える 1

1

これを試して

 $('#qty').bind("keydown",function (e) {
        if (e.which == 13) {
         e.preventDefault();
            qty = $("#qty").val();

            $("#qty").html(qty);

            amount = qty * data.ProductPrice;
        }
    });
于 2012-10-09T01:53:41.677 に答える