Javascript ajax按键功能不工作,ActionResult参数未接收任何值

Javascript ajax按键功能不工作,ActionResult参数未接收任何值,javascript,jquery,ajax,asp.net-mvc,asynchronous,Javascript,Jquery,Ajax,Asp.net Mvc,Asynchronous,我想在ajax按键事件上更改(计算)textboxs的值,但控制器ActionResult没有收到任何要计算的值(接收null) 我试着 数据:{text:request.term} 当我这样做时,ajax调用并没有调用controller方法。还有一件事,我如何将两个双精度值作为参数发送到ActionResult方法,形成一个ajax调用,如下所示: <script> $('#TotDiscnt').keypress(function () { //

我想在ajax按键事件上更改(计算)textboxs的值,但控制器ActionResult没有收到任何要计算的值(接收null)

我试着

数据:{text:request.term}

当我这样做时,ajax调用并没有调用controller方法。还有一件事,我如何将两个双精度值作为参数发送到ActionResult方法,形成一个ajax调用,如下所示:

 <script>
$('#TotDiscnt').keypress(function () {           
    //var data = $('#totDiscnt').val();
    $.ajax({
        type: 'Post',
        url: '/Whatever/Discount',
        data: {num1:$('#totDiscnt').val(),
                     num2:$('#Discnt').val() },
        success: function (response) {
            $('#TotPurAmt').val(response);
        }
    });
});

是的,您可以添加事件键或按键。您可以稍微更改代码

<script>
$('#TotDiscnt').keypress(function () {           
    //var data = $('#totDiscnt').val();
    $.ajax({
        type: 'POST',
        contentType: 'application/json; charset=UTF-8',  //send type of data to sever
        dataType: 'json', //retrun type of data from server
        url: '/Whatever/Discount',
        data: JSON.stringify(text:$(this).val()),

       // data: $('#totDiscnt').val(),
        success: function (response) {
            $('#TotPurAmt').val(response);
        }
    });
});
弃用通知:从jQuery 3.0开始,jqXHR.success()、jqXHR.error()和jqXHR.complete()回调将被删除。您可以改用jqXHR.done()、jqXHR.fail()和jqXHR.always()。 欲了解更多详情,请访问官方网站


请在评论中告知它是否有效

要从ajax调用向ActionResults参数发送多个值: 脚本:


这行代码的格式是否正确“data:{json.stringify(text:$('#totDiscnt').val())}”?在json之后。它说:expected“,text:“)expected”和before}它说的是“expected”,ajax没有在serverWrite上发送请求,而是在currly括号内。在text:“)expected”和before之后,它说的是“expected”快乐编码。先试试你自己。
 <script>
$('#TotDiscnt').keypress(function () {           
    //var data = $('#totDiscnt').val();
    $.ajax({
        type: 'Post',
        url: '/Whatever/Discount',
        data: {num1:$('#totDiscnt').val(),
                     num2:$('#Discnt').val() },
        success: function (response) {
            $('#TotPurAmt').val(response);
        }
    });
});
 public ActionResult Discount(double num1, double num2)
    {
        //calculation

        return Json(sum, JsonRequestBehavior.AllowGet);
<script>
$('#TotDiscnt').keypress(function () {           
    //var data = $('#totDiscnt').val();
    $.ajax({
        type: 'POST',
        contentType: 'application/json; charset=UTF-8',  //send type of data to sever
        dataType: 'json', //retrun type of data from server
        url: '/Whatever/Discount',
        data: JSON.stringify(text:$(this).val()),

       // data: $('#totDiscnt').val(),
        success: function (response) {
            $('#TotPurAmt').val(response);
        }
    });
});
public ActionResult Discount(string text)
{

   // calculation

    return Json(sum, JsonRequestBehavior.AllowGet);
}
 <script>
    $(document).ready(function () {
        $('#btnCalculate').click(function () {
            $.ajax({
                type: 'Post',
                url: '/Sales/Calculate',
                data: { num1: $('#txtNum1').val(), num2: $('#txtNum2').val(),//so on.... },
                success: function (response) {
                    $('#txtSum').val(response)
                }
            });
        });
    });
</script>
 public ActionResult Calculate(int num1, int num2)
    {
        int sum = 0;
        sum = num1 + num2;
        return Json(sum, JsonRequestBehavior.AllowGet);
    }