我有一段 javascript,可以发布到操作方法,并附带一些数据。 该数据的形式为:
pageID 1
photos[1] 2
photos[2] 1
我的操作方法如下所示:
public ActionResult PosImage(IEnumerable<int> photos, int pageID)
当然,pageID 会出现在表单数据中,但 photos 始终为空。
ASP.MVC可以这样绑定(bind)吗?
处理帖子的 JS 如下所示:
var ids = { 'photos': {}, 'pageID': SitePhotos.site_id };
$('#stone-photo-sortable li').each(function (i) {
i++;
var id = $(this).attr('rel');
ids.photos[id] = i;
});
$.ajax({
type: "POST",
url: '/backend/site/posimage/?timestamp=' + new Date().getTime(),
dataType: 'json',
data: ids,
beforeSend: function () { },
complete: function () { },
success: function (html) {
if (html.worked == 1) {
Notify.add('success', 'New Positions saved to the database..');
} else {
Notify.add('failure', 'Couldn\'t save positions.');
}
}
});
最佳答案
我还没有通过 javascript 完成它,但你的帖子数据实际上应该是这样的:
photos: 1
photos: 2
photos: 3
您可能需要使用不同的 $.ajax 重载才能传递具有重复键名称的发布数据。
编辑似乎您所要做的就是设置 traditional标志为真。
关于javascript - ASP.NET MVC : Action Method and automatically binding to an array of values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4723566/