gpt4 book ai didi

javascript - 使用多个参数将数据从javascript传递到MVC Controller

转载 作者:行者123 更新时间:2023-11-30 11:03:28 25 4
gpt4 key购买 nike

我有 Controller OrderAssignmentRuleSet 和以下 ActionResult 方法

public ActionResult OrderAssignmentRuleSetEdit(string customerId, string Name= null, List<string> listOfItems = null)
{

}

下面是我的 Javascript 将数据传递给我上面的 controller 方法

     $("#rolesValues").change(function () {
var id ='0001'
var name = 'admin'
var listOfItems= [];
//Populating listofItems with multiselect dropdown
if ($('#ddlItemsList option:selected').length > 0) {
listOfItems = $.map($('#ddlItemsList option:selected'), function (item) {
return item.value;
});
}

var data = {
customerId: id,
Name: name,
listOfItems: listOfItems
}


$.ajax({
type: 'POST',
url: '/OrderAssignmentRuleSet/OrderAssignmentRuleSetEdit',
traditional : true,
data: data,
content: "application/json;",
dataType: "json",
success: function () {
}
});

我的问题是将两个 strings(id 和 name)和一个 array(listofItems 作为列表)传递给 controller,当前代码不返回任何东西。请帮助这个代码有什么问题?

最佳答案

您正在尝试使用 POST 方法发送您发布的数据。但是您正在尝试在操作方法的查询参数中收集这些数据。

所以尝试创建一个类

public class Sample
{
public string customerId { get; set; }
public string Name { get; set; }
public List<string> listOfItems { get; set; }
}

然后像这样修改你的 Action 方法

public ActionResult OrderAssignmentRuleSetEdit([FromBody] Sample sample)
{
//Your stuff here
}

关于javascript - 使用多个参数将数据从javascript传递到MVC Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56625527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com