在选项卡视图中创建选项卡,调用返回局部视图的控制器操作

时间:2017-04-07 20:58:23

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

我使用以下格式的kendo标签创建了标签。现在我想创建标签 在div内部,通过调用控制器操作显示每个选项卡的部分视图,并将两个参数传递给该控制器操作,该操作返回带有模型数据的局部视图。我已经检查了很多解决方案,但可以找到一个能够解决我的要求的正确解决方案。任何人都可以提供帮助。

Script Component

1 个答案:

答案 0 :(得分:0)

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

<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>