在MVC树视图中单击下一页按钮后,布局再次被填充。 [英] After clicking to next page button in MVC Tree view on layout is getting filled again.
问题描述
我在MVC中使用Tree View创建了一个小型演示。
点击树视图的节点所选注释的详细信息将显示在部分视图中。
在当前阶段,我已经设法实现这一目标。
但问题是,当我点击第2页时,树视图再次被填满,我不想填写一次又一次。
我只想显示带有选定值的树视图(旧值)。
Layout.cshtml
< html lang =en>
< head>
< ;标题>树视图演示< / title>
@ Styles.Render(〜/ Content / css)
@ Scripts.Render(〜/ bundles / jquery)
@ Scripts.Render(〜/ bundles / jqueryui)
@ Scripts.Render(〜/ bundles / jqueryval)
@ Scripts.Render(〜/ bundles / jqueryval1)
< / head>
< body>
@ *
* @ | @ { < script src =@ Url.Content (〜/ Scripts / jquery.jstree.js)type =text / javascript>< / script> < script type = text / javascript> var divId = []; var divText = []; 函数GetIDs(){ divId = []; divText = []; $(#onflycheckboxes)。jstree(get_checked,null,true).each (function(){ divId.push(this.id); divText.push($(this).children('a')。 text()); }); alert(Ids are:+ divId +Text:+ divText); } 函数SubmitPlayers(){ var temp = ; divId = []; divText = []; $(#onflycheckboxes)。jstree(get_checked, null,true).each (function(){ divId.push(this.id); divText.push($(this).children('a')。text()); temp = temp + this.id +,; }); $ .ajax({ //获取学生PartialView // url:/ Home / getPlayersData, url:/ Home / TestView, 数据类型:获取, 数据:{players:temp,Page_No:1}, 成功:功能(数据){ $(#PlayersDetailTable)。empty()。append(data); }, 错误:函数(){ 警报(看似不对劲); } }); } < / script> I have created one small demo with Tree View in MVC.
@RenderBody()
|
@RenderBody()
< / body>
< / html>
家庭控制器中的TestView
公共ActionResult TestView(字符串播放器,int? Page_No)
{
if(Session [Sessionplayers] == null)
{
Session [ Sessionplayers] =玩家;
}
ViewBag.id =玩家;
HttpCookie hc = new HttpCookie(test,1223 );
Request.Cookies.Add(hc);
HttpCookie hc1 = new HttpCookie(courseName,Session [Sessionplayers]。ToString());
Request.Cookies.Add(hc1);
PlayerBusinessLayer playerBusinessLayer = new PlayerBusinessLayer();
列表< SelectedPlayers> ObjselectedPlayers = playerBusinessLayer.GetAllPlayers(Session [Sessionplayers]。ToString())。ToList();
int Size_Of_Page = 4;
int No_Of_Page =(Page_No ?? 1);
ViewBag.PageCount = No_Of_Page;
//返回PartialView(TestView, ObjselectedPlayers.ToPagedList(No_Of_Page,Size_Of_Page));
返回View(TestView,ObjselectedPlayers.ToPagedList(No_Of_Page,Size_Of_Page));
}
TestView.cshtml
@ * @ model IEnumerable< businesslayer.selectedplayers> * @
@model PagedList.IPagedList< businesslayer.selectedplayers>
@using PagedList.Mvc;
@ {
布局=〜/ Views / Shared / _LayoutNew.cshtml;
}
@foreach(型号中的var项目)
{
}
@ Html.DisplayName(Select) | 姓氏 | 姓名缩写 | BatSkill | BowlPos | FieldType |
---|---|---|---|---|---|
@ Html.CheckBox(ABCD) | @ Html.DisplayFor(modelItem => item.Surname) | @ Html.DisplayFor(modelItem => item.Initials) | @Html。 DisplayFor(modelItem => item.BatSkill) | @ Html.DisplayFor(modelItem => item.BowlPos) | @ Html.DisplayFor(modelItem => item.FieldType) |
< input type =buttonvalue =编辑/>
Page @(Model.PageCount @ Model.PageCount的< Model.PageNumber?0:Model.PageNumber)
@ Html.PagedListPager(Model,Page_No => Url.Action(TestView,new {Page_No,Sorting_Order = ViewBag.CurrentSortOrder,Filter_Value = ViewBag.FilterValue}))
</body>
</html>
TestView in Home Controller
public ActionResult TestView(string players, int? Page_No)
{
if (Session["Sessionplayers"] == null)
{
Session["Sessionplayers"] = players;
}
ViewBag.id = players;
HttpCookie hc = new HttpCookie("test", "1223");
Request.Cookies.Add(hc);
HttpCookie hc1 = new HttpCookie("courseName", Session["Sessionplayers"].ToString());
Request.Cookies.Add(hc1);
PlayerBusinessLayer playerBusinessLayer = new PlayerBusinessLayer();
List<SelectedPlayers> ObjselectedPlayers = playerBusinessLayer.GetAllPlayers(Session["Sessionplayers"].ToString()).ToList();
int Size_Of_Page = 4;
int No_Of_Page = (Page_No ?? 1);
ViewBag.PageCount = No_Of_Page;
//return PartialView("TestView", ObjselectedPlayers.ToPagedList(No_Of_Page,Size_Of_Page));
return View("TestView", ObjselectedPlayers.ToPagedList(No_Of_Page, Size_Of_Page));
}
TestView.cshtml
@*@model IEnumerable<businesslayer.selectedplayers>*@
@model PagedList.IPagedList<businesslayer.selectedplayers>
@using PagedList.Mvc;
@{
Layout = "~/Views/Shared/_LayoutNew.cshtml";
}
@foreach (var item in Model)
{
}
@Html.DisplayName("Select") | Surname | Initials | BatSkill | BowlPos | FieldType |
---|---|---|---|---|---|
@Html.CheckBox("ABCD") | @Html.DisplayFor(modelItem => item.Surname) | @Html.DisplayFor(modelItem => item.Initials) | @Html.DisplayFor(modelItem => item.BatSkill) | @Html.DisplayFor(modelItem => item.BowlPos) | @Html.DisplayFor(modelItem => item.FieldType) |
<input type="button" value="Edit" />
Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount
@Html.PagedListPager(Model, Page_No => Url.Action("TestView", new { Page_No, Sorting_Order = ViewBag.CurrentSortOrder, Filter_Value = ViewBag.FilterValue }))
推荐答案
(#onflycheckboxes)。jstree(get_checked,null,true).each
(function(){
divId.push(this.id);
divText.push(
("#onflycheckboxes").jstree("get_checked", null, true).each
(function () {
divId.push(this.id);
divText.push(
(this).children ('a')。text());
});
alert(Ids are:+ divId +Text :+ divText);
}
函数SubmitPlayers(){
var temp =;
divId = [];
divText = [];
(this).children('a').text());
});
alert("Ids are:" + divId + " Text:" + divText);
}
function SubmitPlayers() {
var temp = "";
divId = [];
divText = [];
( #onflycheckboxes)。jstree(get_checked,null,true).each
(function(){
divId.push(this.id);
divText.push(
("#onflycheckboxes").jstree("get_checked", null, true).each
(function () {
divId.push(this.id);
divText.push(
这篇关于在MVC树视图中单击下一页按钮后,布局再次被填充。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!