0
我需要在标签点击事件中重新加载GridView
。我写了下面的代码:将新内容添加到html后,应用程序崩溃
<script>
function OnTabClickEvent(s, e) {
var tableUrl;
switch (e.tab.Index) {
case 0:
tableUrl = '@Url.Action("CGridViewPartial", "Competences")';
break;
default:
tableUrl = '@Url.Action("TGridViewPartial", "Technologies")';
}
$('#TabContent').empty();
$('#TabContent').load(tableUrl);
}
</script>
<div>
@Html.DevExpress().TabControl(settings =>
{
settings.Name = "CatalogTabControl";
settings.Width = Unit.Percentage(100);
settings.Tabs.Add(tab =>
{
tab.Name = "TabCompetences";
tab.Text = Headers.Competences;
});
settings.Tabs.Add(tab =>
{
tab.Name = "TabProjects";
tab.Text = Headers.ProjectsActivities;
});
settings.Tabs.Add(tab =>
{
tab.Name = "TabTechnologies";
tab.Text = Headers.Technologies;
});
//Events
settings.ClientSideEvents.TabClick = "OnTabClickEvent";
}).GetHtml()
</div>
<div id="TabContent">
@Html.Action("CGridViewPartial", "Competences")
</div>
它的工作原理,但只有一次......第二次点击它崩溃与错误:
Uncaught TypeError: Cannot read property 'FindEventSourceParentByTestFunc' of undefined Page:74 Uncaught TypeError: ASPx.TCTClick is not a function
什么我做错了吗?我真的不明白为什么它不适用于第二个和下一个标签点击。
这是一个JavaScript错误或.NET错误?看起来像JavaScript,但只是想确定。如果是这样,您可能需要发布相关的JavaScript代码。您的浏览器应该能够告诉您错误发生的位置 – ADyson
这是包含在默认脚本中的JavaScript错误。这很有趣,只有当我向页面添加新内容而不是删除时才会出现此错误。 –
“默认脚本”。究竟哪个脚本?浏览器中没有默认脚本,只有您或MVC框架添加的脚本。这将有助于了解错误的位置。 – ADyson