学校要做一个数据查询,按条件并且能下载
20160312 使用HTML.ajax异步刷新
视图层
@Html.Partial("_men")
<div class="col-md-10">
<div class="row">
@using(Ajax.BeginForm(new AjaxOptions
{
HttpMethod = "post",
InsertionMode = InsertionMode.ReplaceWith,
UpdateTargetId = "searchbm"
}))
{
@Html.DropDownList("RecommName", "选择负责人")
@Html.DropDownList("DateTime","选择毕业时间")
@Html.DropDownList("School", "选择学校")
@Html.DropDownList("Major", "专业")
<input type="text" name="Name" placeholder="请输入姓名..." />
<input type="text" name="Card" placeholder="请输入身份证号..."/>
<input type="submit" value="查询" />
<input type="button" id="down" value="下载" />
}
</div>
<div class="row">
@Html.Partial("_Searchbm", Model)
</div> </div>
<script >
$(function () {
$("#down").click(function () {
var form = document.forms[];
var oldaction = form.action;
form.action = "/zsgl/down";
form.method = "post";
form.target = "_blank";
form.submit();
form.action = oldaction;
})
})
</script>
控制器
public ActionResult bmman()
{
//1.get all studentI
List<StudentI> si = sb.Get();
//2.create dropselect to <select>
ViewData["RecommName"] = si.DistinctBy(x => x.RecommName).Select(a => new SelectListItem { Text = a.RecommName, Value = a.RecommName });
ViewData["DateTime"] = si.DistinctBy(x => x.DateTime).Select(a => new SelectListItem { Value = a.DateTime, Text = a.DateTime });
ViewData["Major"] = si.DistinctBy(x => x.Major).Select(a => new SelectListItem { Value = a.DateTime, Text = a.DateTime });
ViewData["School"] = si.DistinctBy(x => x.DateTime).Select(a => new SelectListItem { Value = a.DateTime, Text = a.DateTime }); return View(si);
}
[HttpPost]
public ActionResult bmman(StudentI s)
{
if (Request.IsAjaxRequest())
{
List<StudentI> si = sb.Get(); if (s.DateTime != null)
si = si.Where(x => x.DateTime == s.DateTime).ToList();
if (s.RecommName != null)
si = si.Where(x => x.RecommName == s.RecommName).ToList();
if (s.Card != null)
si = si.Where(x => x.Card.Contains( s.Card)).ToList();
if (s.Name != null)
si = si.Where(x => x.Name.Contains(s.Name)).ToList(); return PartialView("_Searchbm", si);
}
return HttpNotFound();
}
注意事情:
1.web.config里面修改使用ajax异步刷新
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
<!--<add key="owin:AppStartup " value="SSM/Spp_Start/IdentityConfig"/>-->
</appSettings>