1. 新建一个TaskBoardDetail.cshtml,内容如下:(主要是显示自己需要的数据)
@{
int i = 0;
}
@foreach(var item in ViewBag.DataList)
{
<div style="float:left;background-color:#e8e2e2;border:3px solid black;">
@foreach (var it in item)
{
<p style="background-color:#15d32b">@it.functionName</p><br />
}
</div>
i++;
}2.在HomeController.cs中添加获取数据的 TaskBoardDetail方法,可带参数可不带,根据自己的需要
[HttpPost]
public ActionResult TaskBoardDetail(string value)
{
try
{
IEnumerable<IGrouping<string, TaskDetail>> taskGroup = list.GroupBy(p => p.projectName);
foreach (var item in taskGroup)
{
if (value==item.Key)
{
List<TaskDetail> list2= item.ToList();
var query = from p in list2 orderby p.priority select p;//按优先级排序
list2 = query.ToList();
IEnumerable<IGrouping<string, TaskDetail>> taskGroup2 = list2.GroupBy(p => p.group);
ViewBag.DataList = taskGroup2;
break;
}
}
return PartialView("TaskBoardDetail");
}
catch (Exception exp)
{
throw exp;
}
}其中TaskDetail是我自定义的类。此函数的主要目的就是给ViewBag.DataList赋值,并return PartialView("TaskBoardDetail");
3.我是要在Index页面点击按钮,刷新加载TaskBoardDetail内容。放置一个div用于承接TaskBoardDetail内容。
<div>
<input type="button" οnclick="BtnClick()" value="确定">
</div>
<div id="Selector"></div>脚本如下:<script type="text/javascript" language="javascript">
$(document).ready(function () {
$("input[type='button']").click(function () {
$.ajax({
url: "Home/TaskBoardDetail",
type: "Post",
data: { "value": $(this).val()},
success: function (data) {
$("#Selector").html(data);},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("加载失败:" + errorThrown);
}
});
});
});
</script>OK!加载刷新页面成功。
版权声明:本文为liuxufeiyang000原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。