我正在使用asp.net mvc与ext.net,我试图创建一组选项卡,只有当用户选择它们时才加载信息。异常尝试使用Ext.NET从ajax请求加载选项卡
我可以管理使用ContentFromAction功能的局部视图加载到选项卡/板:
但我不能找出如何填充选项卡/面板仅当标签是选择。
我根据我对Ext.NET MVC Examples Explorer version 2.5
代码库和在TabPanel > Basic > Ajax Load
例子的代码项目中找到here
据我可以重现该问题我已经砍下例如:
在我认为我创建卡,配置装载机(完全一样的例子项目):
Index.cshtml
X.Panel()
.ID("Tab3")
.Title("Ajax Tab")
.BodyPadding(6)
.AutoScroll(true)
.Loader(X.ComponentLoader()
.Url(Url.Action("Ajax"))
.LoadMask(m => m.ShowMask = true)
.Params(new Parameter("containerId", "Tab3"))
.Mode(LoadMode.Html)
)
它正确地调用到我的控制器(完全一样的例子项目):
Axax_LoadController.cs
using System.Web.Mvc;
namespace Ext.Net.MVC.Examples.Areas.TabPanel_Basic.Controllers
{
public class Ajax_LoadController : Controller
{
public ActionResult Ajax(string containerId)
{
return View("Ajax");
}
}
}
这反过来又显示选项卡中的相应的视图它被点击之后于:
Ajax.cshtml(这工作)
@using Ext.Net.MVC
<div>
<p>I am content loaded via Ajax when the tab is selected</p>
</div>
如果我试图在我看来添加控件,如下问题开始:
Ajax.cshtml
@using Ext.Net.MVC
@{ var X = Html.X(); }
<div>
<p>I am content loaded via Ajax when the tab is selected</p>
@X.TextField().Text("I am a text field")
</div>
这失败例外:
ItemTag validation (_tkn_1): Reference token (init_script) was not found.
如果我修改文件Ext调用返回Html如下:
Ajax.cshtml
@using Ext.Net.MVC
@{ var X = Html.X(); }
<div>
<p>I am content loaded via Ajax when the tab is selected</p>
@X.TextField().Text("I am a text field").ToHtmlString()
</div>
它正确地呈现在我选定的选项卡下面的文字:
I am content loaded via Ajax when the tab is selected <#:item ref="init_script" index="0">Ext.create("Ext.form.field.Text",{renderTo:"App.id534c5fe0f159f3fb_Container",value:"I am a text field"});</#:item><div id="App.id534c5fe0f159f3fb_Container"></div>
我相信ext.net代码由@geoffrey写.mcgill堆栈溢出,所以我希望他能帮助拯救我。