IEnumerable<int> 数据集从控制器传递到 VIEW 并根据视图页面上的值显示或隐藏 div 部分
IEnumerable<int> dataset pass from controller to VIEW and show or hide div sections according to that values on viewpage
我有以下控制器
[HttpGet]
[ValidateInput(false)]
public ActionResult Create_Template(IEnumerable<ProductsPropertiesVM> model)
{
// new you have access to all the ID's of the selected items, for example
IEnumerable<int> selectedIDs = model.Where(x => x.IsChecked).Select(x => x.Property_ID);
return View(selectedIDs);
}
我想绑定 IEnumerable<int> selectedIDs
数据值以查看
一旦我在调试模式下 运行 通常那些选择的 ID 会像这样显示
所以我想先将那些 IEnumerable 数据集传递给查看,然后根据 viewpage
上的值显示或隐藏 div 部分
如果我能够绑定数据以查看,我计划显示或隐藏 div 部分,如下所示(感谢您的建议)
@{
ViewBag.Title = "Create Templat";
}
<!DOCTYPE html>
<html>
<head>
<title>Create a Templat</title>
</head>
<body>
<div id="header"> .... </div>
<div id="nav"> .... </div>
<div id="section"> .... </div>
<div id="footer"> .... </div>
</body>
</html>
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
<script type="text/javascript">
$(document).ready(function () {
//using for loop read the array values index 0 to end:
for(i=0;i<array.length();i++){
if(array has value 1) $("#header").show()
else $(#header").hide();
if(array has value 2) $("#nav").show()
else $("#nav").hide();
if(array has value 3) $("#section").show()
else $("#section").hide();
.........
}
});
</script>
}
所以我正在寻找执行此操作的好方法
在您看来,您可以将模型定义为 IEnumerable<int>
并将其用于如下模板:
@model IEnumerable<int>
@{
ViewBag.Title = "Create Templat";
}
<!DOCTYPE html>
<html>
<head>
<title>Create a Templat</title>
</head>
<body>
@if (Model.Contains(1))
{
<div id="header"> 1.... </div>
}
@if (Model.Contains(2))
{
<div id="nav"> 2.... </div>
}
@*and so on ...*@
<div id="section"> .... </div>
<div id="footer"> .... </div>
</body>
</html>
无需在客户端做任何事情。
我有以下控制器
[HttpGet]
[ValidateInput(false)]
public ActionResult Create_Template(IEnumerable<ProductsPropertiesVM> model)
{
// new you have access to all the ID's of the selected items, for example
IEnumerable<int> selectedIDs = model.Where(x => x.IsChecked).Select(x => x.Property_ID);
return View(selectedIDs);
}
我想绑定 IEnumerable<int> selectedIDs
数据值以查看
一旦我在调试模式下 运行 通常那些选择的 ID 会像这样显示
所以我想先将那些 IEnumerable 数据集传递给查看,然后根据 viewpage
上的值显示或隐藏 div 部分如果我能够绑定数据以查看,我计划显示或隐藏 div 部分,如下所示(感谢您的建议)
@{
ViewBag.Title = "Create Templat";
}
<!DOCTYPE html>
<html>
<head>
<title>Create a Templat</title>
</head>
<body>
<div id="header"> .... </div>
<div id="nav"> .... </div>
<div id="section"> .... </div>
<div id="footer"> .... </div>
</body>
</html>
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/jqueryui")
<script type="text/javascript">
$(document).ready(function () {
//using for loop read the array values index 0 to end:
for(i=0;i<array.length();i++){
if(array has value 1) $("#header").show()
else $(#header").hide();
if(array has value 2) $("#nav").show()
else $("#nav").hide();
if(array has value 3) $("#section").show()
else $("#section").hide();
.........
}
});
</script>
}
所以我正在寻找执行此操作的好方法
在您看来,您可以将模型定义为 IEnumerable<int>
并将其用于如下模板:
@model IEnumerable<int>
@{
ViewBag.Title = "Create Templat";
}
<!DOCTYPE html>
<html>
<head>
<title>Create a Templat</title>
</head>
<body>
@if (Model.Contains(1))
{
<div id="header"> 1.... </div>
}
@if (Model.Contains(2))
{
<div id="nav"> 2.... </div>
}
@*and so on ...*@
<div id="section"> .... </div>
<div id="footer"> .... </div>
</body>
</html>
无需在客户端做任何事情。