2

在这里我遇到了问题:

OneCar -> 当我只接受一个论点时,我可以看到价值并且一切正常

但是当我尝试获取 ListCar1 和 ListCar2 中的参数列表时,我只能看到 null

我相信这是一个小错误,但我不知道如何解决它。

[HttpPost]
        public JsonResult DodajTematSave(string OneCar, string[] ListCar1, List<string> ListCar2)
        {
        }

这是Json动作

<script type="text/javascript">

    function Save() {

        var mycars = new Array()
        $("[name^='CarString']").each(function () {
            mycars.push(this.value);
        });

        $.ajax({
            url: '@Url.Action("DodajTematSave", "StronaGlowna")',
            dataType: "json",
            data: {
                OneCar: mycars[0]
                ListCar1: mycars
                ListCar2: mycars
            },
            type: "POST",
            async: false,
            error: function () {
            },
            success: function (data) {
                if (data.Success) {
                    alert('success');
                }

            }
        });
    }

</script>

正确答案:

<script type="text/javascript">

    function Save() {

        var mycars = new Array()
        $("[name^='CarString']").each(function () {
            mycars.push(this.value);
        });

        $.ajax({
            url: '@Url.Action("DodajTematSave", "StronaGlowna")',
            dataType: "json",
            data: {
                OneCar: mycars[0]
                ListCar1: mycars
                ListCar2: mycars
            },
            type: "POST",
            traditional: true,
            async: false,
            error: function () {
            },
            success: function (data) {
                if (data.Success) {
                    alert('success');
                }

            }
        });
    }

</script>
4

1 回答 1

2

您需要将traditional: true参数添加到$.ajax调用中。可以在这个jQuery 论坛主题或这个答案中找到详细信息。

于 2013-03-25T12:00:13.427 回答