【发布时间】:2013-02-09 08:24:49
【问题描述】:
我有这个问题。
-
我在 JavaScript 中有一个数组如下:
checkedItems={"1000","1001","1002"}
我需要将此数组发送到 C# 控制器
- 当控制器处理完这个数组后,返回 PartialView
- PartialView 将被渲染
我尝试了所有方法,但没有任何效果。
这是我的 Javascript:
function getAllCheckedFirsts()
{
var postIds = {
data: []
};
var i = 0;
$(":checked[id$='-first']").each(function (){
var id = $(this).attr("id");
var words = id.split("-");
postIds.data.push(words[0]);
i++;
});
$.post("/Home/getInfoAboutChecked", postIds);
}
这是我的控制器:
[HttpPost]
public PartialViewResult getInfoAboutChecked(string[] data)
{
List<EntityModel> model = new List<EntityModel>();
if (data.Length != 0)
{
int id = 0;
WSEntityInfo entity;
WSPropertyInfo[] fids;
foreach (var e in data)
{
id = Convert.ToInt32(e);
entity = WSConnect.getEntityInfo(id);
fids = WSConnect.getAllFidsAsWSPropertyInfo(id);
model.Add(new EntityModel(entity, fids));
}
}
return PartialView("_EntitiesView",model);
}
但控制器中的数据仍然为 NULL 问题是什么 ?还有一个问题,我可以在哪里以及如何定义 html 中的渲染位置。 感谢帮助
【问题讨论】:
-
你为什么要定义
i? -
发帖前有没有检查
postIds的值是多少? -
在 postIds 中是 Object,其中有数据:array[1] 或 3 或其他,为什么?
标签: javascript ajax jquery asp.net-ajax