-1

入力フィールドがあります:

    <input class="quantityInput" data-index="@table.Rows.IndexOf(row)"
 type="number" value="@row[col.ColumnName]" min="1"/>

ここに私のjsコードがあります:

$(document).ready(function () {
    $(function () {
        $(document).on('change', '.quantityInput', function () {
            var data = {
                Id: $(this).data('index'),
                value: $(this).val()
            };
            $.getJSON("/Order/BasketSession/", data, function (result) { });
            location.reload(true);
            alert("hi!");
        });
    });

私のコントローラーで:

public JsonResult BasketSession(int Id, int value)
        {
            (HttpContext.Session["basket"] as DataTable).Rows[Id][2] = value;

            return Json(true);
        }

を使用しない場合、キーボードを使用して入力フィールドの値を変更するalertと、jsonfunc が動作しませんが、マウス クリックで 1 つずつ増減すると、使用してalertもしなくても (クロムで)動作します。

Firefoxではまったく機能しません

私の問題を理解していただければ幸いです

4

2 に答える 2

0

このコードは私のために働いています:

 $(document).ready(function () {
    $(function () {
        $(document).on('change', '.quantityInput', function () {
            var data = {
                Id: $(this).data('index'),
                value: $(this).val()
            };
            var jqxhr = $.getJSON("/Order/BasketSession/", data, function () { });
            jqxhr.complete(function() { location.reload(true); });
        });
    });

jQuery.getJSON()へのリンクをありがとう @danielepolencic

于 2013-08-13T21:23:00.697 に答える