0

TLDR;为什么窗格 2 contentUrl 数据会覆盖窗格 1 contentUrl 数据。详情如下。

好的,我们在这里受到了教育,并尝试学习更多基于 Web 的开发,同时太快地开发应用程序。使用 MVC 5 和 Telerik (Kendo) 我试图创建一个 spitter,而不是从 4 个不同的局部视图加载。目前我只是使用 Telerik 网站上的虚拟/演示数据。

当页面加载时,它会短暂显示@Url.Content("~/Productivity") 的内容,然后被@Url.Content("~/QualityControl") 的内容替换,但标题不会改变。

Productivity 和 QualityControl 都是由相关控制器返回的部分视图,并且是 . SpanOfControl 和 Position Control 当前仅返回 H2 标头。

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

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

index.cshtml 上的 HTML/Javascript

<div id="verticalSplit">
<div id="topHorizontal">
    <div id="top-left">Top Left</div>
    <div id="top-right">Top Right</div>
</div>
<div id="bottomHorizontal">
    <div id="bottom-left">Bottom Left</div>
    <div id="bottom-right">Bottom Right</div>
</div>

<script type="text/javascript">
 $(document).ready(function () {

    $("#verticalSplit").kendoSplitter({
        orientation: "vertical",
        panes: [
            { collapsible: true, expand: true, resize: false },
            { collapsible: true, expand: true, resize: false }
        ]
    });
   $("#topHorizontal").kendoSplitter({
        orientation: "horizontal",
        panes: [
            { contentUrl: "@Url.Content("~/Productivity")" },
            { contentUrl: "@Url.Content("~/QualityControl")" }
        ]
    });
    $("#bottomHorizontal").kendoSplitter({
        orientation: "horizontal",
        panes: [
            { contentUrl: "@Url.Content("~/SpanOfControl")" },
            { contentUrl: "@Url.Content("~/PositionControl")" }
        ]
    });

4

1 回答 1

0

所以我做了很多挖掘工作,实际上在 2 小时前找到了答案,但 Telerik 支持上仍然含糊地提到了它。

由于我使用的是 Telerik UI for ASP.NET MVC 中稍作修改的演示,因此我忘记更改图表的名称。我决定发布这个答案,因为我在写这个问题时已经意识到。即使它们位于不同的视图和控制器中,当尝试在同一页面上显示它们时,您可能会遇到我遇到的问题。更令人困惑的是,这些图表在单独的页面上运行良好。

因此,如果您想在单独的页面上使用 2 个图表/控件,但仍想在同一页面上显示它们(通过视图/网格/窗格等),请确保更改下面的名称。

默认:

Html.Kendo().Chart()
  .Name("chart")
于 2018-02-28T20:32:44.997 回答