gpt4 book ai didi

javascript - 如何使用 Jquery 将数组传递给 MVC Controller ?

转载 作者:行者123 更新时间:2023-11-28 15:08:01 26 4
gpt4 key购买 nike

我是开发 .Net MVC 5 应用程序的初学者。但我在使用 Jquery 将数组或对象传递给 Controller ​​时遇到一些问题。

我正在使用按钮添加动态输入字段。我想将输入的数据传递给 Controller ​​。但我没能成功。

Html 部分就是这样;

        <div id='TextBoxesGroup'>
<div id="TextBoxDiv1">
<label>Textbox #1 : </label><input type='text' id='textbox1'>
</div>
</div>
<input type='button' value='Add Button' id='addButton'>
<input type='button' value='Remove Button' id='removeButton'>
<input type='button' value='Get TextBox Value' id='getButtonValue'>

获取值按钮功能就是这样;

 $("#getButtonValue").click(function () {
var list = new Array();
for (i = 1; i < counter; i++) {
list[i] = $('#textbox' + i).val();
alert(list[i]);
}
var postData = { values: list };

$.ajax({
type: "POST",
url: "/Surveys/PostQuestionAndOptions",
data: postData,
success: function (data) {
alert(data);
},
dataType: "json",
traditional: true
});
});

即使我将“traditional”设置为 true ,模型也为空。

[HttpPost]
public JsonResult PostQuestionAndOptions(string[] model)
{
return Json(true);
}

有人可以帮助我吗?谢谢。

最佳答案

您需要有一个强类型对象。

JavaScript

$("#getButtonValue").click(function (e) {
e.preventDefault();
var list = [];
for (var i = 1; i < counter; i++) {
list.push($('#textbox' + i).val());
}
var postData = { values: list };
$.ajax({
type: "POST",
url: "/Surveys/PostQuestionAndOptions",
data: postData,
success: function (data) {
alert(data);
},
dataType: "json",
traditional: true
});
});

强类型对象

public MyValues {
public list<string> values {get; set;}
}

Controller 方法

[HttpPost] 
public JsonResult PostQuestionAndOptions(MyValues model) {
return Json(true, JsonRequestBehavior.AllowGet);
}

关于javascript - 如何使用 Jquery 将数组传递给 MVC Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38041679/

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