Telerik mvc多个控件只呈现其中一个

本文关键字:一个 mvc 控件 Telerik | 更新日期: 2023-09-27 17:50:38

MVC 3 Telerik 2012.1.214你好,

我已经有一段时间了,这真的让我很沮丧。我经历了无数的改变,尝试了许多不同的文章、文档和建议。我的问题很简单。我想在页面上有两个teleerik控件。只有一个或另一个将呈现。我确实尝试了一种变化,导致两种渲染。

这似乎太直接了,这让我更沮丧。

在cshtml razor代码中我有这样的:

@{
   Html.Telerik().Window()
   .Name("Window")
   ....etc....
  }
some html ....then
@{  Html.Telerik().TabStrip()
    .Name("TabStrip")
    .Items(tabstrip =>...)
     etc...
    .Render();
  }

在这个场景中,TabString将呈现。如果我同时渲染,第一个会渲染。如果我用@()代替@{},两者都不会渲染。

我做错了什么?

Telerik mvc多个控件只呈现其中一个

从你所说的,我不认为你在使用teleerik控件方面做错了什么。但是,请尝试以下操作;

  1. 删除所有中间的'html'在两个控件之间,并尝试
  2. 在Chrome中渲染页面并检查控制台是否存在任何渲染问题
  3. 检查呈现的Html,以验证这两个控件确实没有呈现。可能它们已经被渲染了,但由于某些原因你没有在浏览器中看到它们

我试过渲染一个类似于你的页面,两个方法@()和@{}都为我工作,这里是代码

@{
Html.Telerik().Window()
    .Name("Window1")
    .Content("<h1>Window1</h1>")
    .Draggable(true)
    .Render();
} 
<span>Here is the middle html</span>
@{
Html.Telerik().TabStrip()
    .Name("TabStrip1")
    .Items(items =>
               {
                   items.Add().Content("<h1>Tab 1</h1>").Text("Tab 1").Visible(true);
                   items.Add().Content("<h1>Tab 2</h1>").Text("Tab 2");
                   items.Add().Content("<h1>Tab 3</h1>").Text("Tab 3");
               })
    .Render();
}

这是@()方法;

@(
Html.Telerik().Window()
    .Name("Window2")
    .Content("<h1>Window2</h1>")
    .Draggable(true)
)
<span>Here is the middle html</span>
@(
Html.Telerik().TabStrip()
    .Name("TabStrip2")
    .Items(items =>
               {
                   items.Add().Content("<h1>Tab 1</h1>").Text("Tab 1").Visible(true);
                   items.Add().Content("<h1>Tab 2</h1>").Text("Tab 2");
                   items.Add().Content("<h1>Tab 3</h1>").Text("Tab 3");
               })
)

这很奇怪,因为我没有遇到这种问题…
你能把你使用的整个代码放在视图中吗?