使用 jquery Post 将数组传递给控制器
Passing array to controller using jquery Post
var sc = new Array();
var i =0;
el.find(".colorable").each(function () {
sc[i++] = $(this).attr("src");
});
$.post("/Edit/ChangeImageColor", { src : sc , s: source, t: target }, function () {
alert("done");
});
我正在尝试将数组( sc )
传递到服务器,但它在 src 中显示为空
public JsonResult ChangeImageColor(string[] src, string s, string t)
{
谁能告诉我我错过了什么?
如果您
使用的是MVC 3 ASP.NET 则可以将其作为JSON请求发送:
var sc = new Array();
var i = 0;
el.find(".colorable").each(function () {
sc[i++] = $(this).attr("src");
});
$.ajax({
url: '/Edit/ChangeImageColor',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({ src: sc, s: source, t: target }),
success: function() {
alert("done");
}
});
如果您使用的是旧版本的 ASP.NET MVC,您可以查看以下博客文章,其中说明了如何集成自定义 JSON 提供程序工厂,允许您将 JSON 请求发送到控制器操作。
尽管您(可能是服务器端)参数传递错误,但我认为您可能会发现这很有用:
var sc = el.find(".colorable").map(function() {
return this.src;
}).get();
这是收集数组中一组元素的属性的更简单的方法。
尝试更改操作方法,如下所示
public JsonResult ChangeImageColor(IEnumerable<string> src, string s, string t)
{
相关文章:
- 将Javascript数组发送到控制器ASP.NET MVC
- 将角度材质设计复选框绑定到控制器中的数组
- $scope$观察数组中的一个特定对象——Angular JS控制器
- 使用查询将对象数组发布到asp.net-mvc控制器操作的正确方法是什么
- 如何将json文件中的数据提取到对象数组中,并在两个控制器之间共享
- 在angularJS中使用模态窗口时,在控制器之间共享对象数组
- Ember.js数组控制器计算属性的复选框
- 使用工厂/服务在控制器AngularJS之间推送数组中的数据
- 如何将从jQuery创建的数组传递给控制器方法
- 作为语法的控制器没有将新的obj传递给数组
- 将选定值数组发送到控制器-MVC
- 如何在Angular中设置异步HTTP服务的回调,以便在不定义数组的情况下在控制器中填充数组
- 我们可以将控制器中的JSON数据(MM/DD/YYYY格式)与今天的's日期,并在数组中显示筛选列表
- ASP.NET MVC:2d数组在从javascript传递到MVC控制器操作后为null
- 使用双向绑定将对象从角度视图动态添加/创建到控制器的数组
- 如何在laravel4中从控制器获取数组到ajax函数
- 角度-将数组中的信息从一个控制器传递到另一个控制器
- AJAX只将数组的最后一个元素传递给MVC 5控制器
- Angular控制器数组是空的,尽管我刚刚定义了它
- 如何使用带有输入字段的表单将项目推送到控制器数组中,该表单将显示在视图中