【问题标题】:create tabs inside a tab view calling a controller action that returns a partial view在选项卡视图中创建选项卡,调用返回部分视图的控制器操作
【发布时间】:2017-04-07 20:58:23
【问题描述】:

我使用以下格式的剑道标签创建了标签。现在我想创建标签 在 div 内并通过调用控制器操作显示每个选项卡的部分视图,并将两个参数传递给该控制器操作,该控制器操作返回部分视图及其模型数据。我已经检查了很多解决方案,但可以找到一个正确的解决方案来解决我的要求。谁能帮忙。

<ul>
    @foreach(var item in model)
        {
            <li>
                @item.DocumentVersion
            </li>
        }
</ul>
@foreach(var Document in model)
        {
            <div>
                <p>
                    @Document.Details
                </p>
                </br>
                <span>
                    @Document.File
                </span>
            </div>
        }

【问题讨论】:

  • 那么做...如果它不起作用,请发布。即调用控制器动作并将两个参数传递给该控制器动作,该控制器动作返回带有模型数据的局部视图。 - 我认为搜索“Partial View MVC”
  • @MarkSchultheissam hello .. 它不是关于调用控制器操作和传递参数。我需要在我的选项卡视图中实现 tat。我不知道我怎么能做到这一点并降落在这里。
  • 这里了解如何传递参数stackoverflow.com/questions/6549541/…
  • 我知道这样做,即调用控制器操作并返回部分视图。但我不知道如何在标签内容中呈现视图

标签: javascript c# jquery kendo-ui kendo-tabstrip


【解决方案1】:

在视图中渲染局部(简单示例)

<div>
@{Html.RenderPartial("MyPartialViewName",
    new { firstName = model.FirstName, lastName = model.LastName});
}
</div>

<div>
@{Html.RenderPartial("MyPartialViewName","MyController",
    new { firstName = model.FirstName, lastName = model.LastName});
}
</div>

创建参数视图操作

[ChildActionOnly]
public ActionResult MyPartialViewName(string firstName, string lastName)
{
// create model here...
 var model = repository.GetThingByParameter(firstName,lastName);
 var partialViewModel = new PartialViewModel(model);
 return PartialView(mypartialViewModel); 
}

示例查看代码:

 <p>
    @model.something
 </p>
 </br>
 <span>
    @model.otherthing
 </span>

或者在局部视图中做所有标记:

<div>
    <p>
        @model.something
    </p>
    </br>
    <span>@model.otherthing</span>
</div>

当前页面:

@foreach(var Document in model)
{
    @{Html.RenderPartial("MyPartialViewName",
        new { firstName = model.FirstName, lastName = model.LastName});
    }
}

注意您也可以将模型部分作为文档传递:

 @foreach(var Document in model)
 {
    @{Html.RenderPartial("MyPartialViewName",Document);
 }

以及局部视图:(这里没有传递参数......只是模型)

@model YourApp.Model.Document
<div>
  <p>
        @Model.Details
   </p>
   </br>
   <span>@Model.File</span>
</div>

【讨论】:

  • 谢谢。我会在早上尝试上面的代码。我希望它有效。
  • 此代码用于直接从 div 内部调用局部视图。但我想调用控制器动作,这没有发生。
  • 我编辑了答案(参见示例顶部附近指定控制器 - 它应该调用该控制器中命名的操作。它应该调用该控制器,在其中设置调试。
猜你喜欢
  • 1970-01-01
  • 2016-12-11
  • 1970-01-01
  • 2017-12-13
  • 1970-01-01
  • 2016-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多