在jquery的按键上更改textbox的值

在jquery的按键上更改textbox的值,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我从我的ASP.NETMVC控制器中获取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

我从我的ASP.NETMVC控制器中获取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>");
  });
});

$(文档).ready(函数(){
风险价值金额=0;
var小计=0;
增值税=0;
var合计=0;
变量数量=0;
var urlSession=''+“报价/产品会话”;
$.getJSON(urlSession,函数(dataQuote){
var i=dataQuote.ja.length;
$.each(dataQuote.ja,函数(索引,数据){
金额=data.ProductQty*data.ProductPrice;
小计+=金额;
$(“#listProduct tr#第一行”)。之后(“+i+”+data.ProductName+”+data.ProductPrice+”+amount+”);
我--;
$('#数量')。按键(功能(事件){
var keycode=(event.keycode?event.keycode:event.which);
如果(键代码=='13'){
数量=$(“#数量”).val();
$(“#数量”).html(数量);
金额=数量*数据.产品价格;
$(“#金额”).html(金额);
}
});
});
增值税=(小计*10)/100;
总计=小计+增值税;
$(“#vvat”).html(“+vat+”);
$(“#subTotal”).html(小计);
$(“#sgrandtotal”).html(“+total+”);
});
});
我想做的是:

  • 按Enter键时更改文本框中的值
  • 更改金额的值(金额=数量*单价)
  • 我是否应该创建控制器的另一个操作来处理此更新或除此之外的任何操作

    谢谢任何人能给我的帮助

    试试这个

     $('#qty').bind("keydown",function (e) {
            if (e.which == 13) {
             e.preventDefault();
                qty = $("#qty").val();
    
                $("#qty").html(qty);
    
                amount = qty * data.ProductPrice;
            }
        });
    

    注意:在OP不知道的情况下:
    e.which==13
    检查事件的键代码是否为13,这与enter键相对应。这可能是浏览器问题。。要获取密钥代码,请从代码本身var keycode=(event.keycode?event.keycode:event.which)中尝试这一行;