javascript - 如何传递多个输入数组元素值

标签 javascript c# jquery asp.net-mvc

如您所见,我有一个带有多个 IDfor 循环,我想获取 ID 的值并将它们传递给我的 Controller ,我怎样才能实现这个目标?

<form id="UserEdit">
         @for (int i = 0; i < Model.Rights.Count; i++)
          { 
            @Html.HiddenFor(m => m.Rights[i].ID)
          }

       <input id="BtnEditUserJS" onclick="PostFormUserEdit();" type="submit" value="Edit">
 </form>

生成的 HTML:

<input id="Rights_0__ID" name="Rights[0].ID" type="hidden" value="31">

<input id="Rights_1__ID" name="Rights[1].ID" type="hidden" value="32">

JavaScript:

function PostFormUserEdit() {  
    $.ajax({
        type: 'POST',
        url: '@Url.Action("EditUser")',
        dataType: 'json',
        data: ,
        success: function (run) {
            console.log('Ok');
            },
        error: function () {
          console.log('something went wrong - debug it!');
            }
        });
}

Controller :

    [HttpPost]
    public JsonResult EditUser(int[] RightId)
    {
        var rights = db.Rights.Where(b => RightId.Contains(b.Id)).ToList();

       //do something with rights
    }

最佳答案

你可以这样实现:

function PostFormUserEdit() 
{  
    var arr = [];
    $("#UserEdit input[type='hidden']").each(function (index, obj) {
        arr.push(obj.val());
    });

    $.ajax({
        type: 'POST',
        url: '@Url.Action("EditUser")',
        dataType: 'json',
        data: arr ,   // or you can try data: JSON.stringify(arr)
        success: function (run) {
            console.log('Ok');
            },
        error: function () {
          console.log('something went wrong - debug it!');
            }
        });
}

关于javascript - 如何传递多个输入数组元素值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57711380/

相关文章:

javascript - 更新 beforeShowDay 中的日期选择器工具提示

javascript - 如何访问输入标签值

c# - 如果大量请求首次尝试同时使用 IPooledObjectPolicy,则 CreateConnection() 会失败

c# - 检查 datareader 是否为空或没有行?网络

javascript - 如何从 JSON 中的 Ajax 响应中获取对象信息

javascript - JQuery - 数据表错误 : Uncaught TypeError: Cannot read property 'className' of undefined

javascript - 未捕获的语法错误 : Unexpected token '

javascript - 如何在混合应用程序中移动这个有缺陷的原生裁剪框?

c# - Windows Phone 应用程序有类似 snoop 的工具吗?

javascript - 点击下拉菜单