【问题标题】:Keep menu selection throw views保持菜单选择抛出视图
【发布时间】:2015-06-25 17:12:56
【问题描述】:

我正在使用 mvc 转到返回部分视图的索引,然后将其呈现在布局的主体中,然后视图的不同部分(编辑、添加、删除)我使用 ajax 和 angular 来呈现不同的它的一部分。所以我有一个包含不同部分(编辑、删除、添加)的索引,它们呈现相应的组件并更新它们抛出 ajax。问题是我只想在与局部视图对应的布局中渲染部分,我的意思是在渲染局部视图的 renderbody() 中。但我不希望布局的标题回发以维护所选选项。

这是一张图片:

这是布局,通常的mvc布局:

<!DOCTYPE html>
<html lang="es">
<head>
</head>
<body>
    <header>
        <div class="content-wrapper">
            <div class="float-left">
                <p class="site-title">
                 @Html.ActionLink("su logotipo aquí", "Index", "Home")</p>
            </div>
        </div>

        <select>
            <option>Option 1</option>
            <option>Option 2</option>
        </select>
    </header>
    <div id="body">
        @RenderSection("featured", required: false)
        <section class="content-wrapper main-content clear-fix">
           @RenderBody()
        </section>
    </div>
    <footer>
        <div class="content-wrapper">
            <div class="float-left">
                <p>&copy; @DateTime.Now.Year - Mi aplicación ASP.NET MVC</p>
            </div>
        </div>
    </footer>

    @Scripts.Render("~/bundles/jquery")
    @RenderSection("scripts", required: false)
</body>

我的观点:

@{
 Layout = "~/Views/Shared/_Layout.cshtml";
 }

 <h2>holaaaaaaaaaaaaaaaaaa</h2>

我的控制器:

    public ActionResult Index()
    {
        return PartialView();
    }

简而言之: 我需要知道如何使用部分视图,在布局中呈现它,维护选择的选项而不是回发以更好地查看页面。

【问题讨论】:

    标签: c# .net asp.net-mvc angularjs


    【解决方案1】:

    如果您没有找到解决问题的好方法,请考虑实施引导选项卡http://getbootstrap.com/javascript/#tabs
    我遇到了类似的问题,但没有找到解决方案,我从选择框切换到选项卡。 基本上你可以像这样使用标签和 ng-includes:

     <ul class="nav nav-tabs">
        <li class="active"><a href="" data-toggle="tab">TabName1 
        <ng-include  src="'myFirstPartialTemplate.html'">
    </a></li>
        <li><a href="" data-toggle="tab">TabName2
    <ng-include  src="'mySecondPartialTemplate.html'">
    </a></li>
    </ul>
    

    【讨论】:

      【解决方案2】:

      如果您的视图是局部视图,则不应设置“布局”属性。

      我会做以下事情:

      让你的索引页面返回一个视图:

      public ActionResult Index()
      {
          return View();
      }
      

      创建另一个操作以返回您的部分:

      public ActionResult MyPartial()
      {
          return PartialView();
      }
      

      在您的索引页面中,如果您愿意,可以在正文中呈现您的部分。

      @{
           Layout = "~/Views/Shared/_Layout.cshtml";
      }
      
      <h2>holaaaaaaaaaaaaaaaaaa</h2>
      @Html.Partial("MyPartial")
      

      不确定这是否是您需要的,但我希望它有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-11-10
        • 2015-11-18
        • 1970-01-01
        • 2019-01-19
        • 1970-01-01
        • 1970-01-01
        • 2020-09-18
        • 2013-04-23
        相关资源
        最近更新 更多