c# – Kendo TabStrip与KendoGrid里面使用JavaScript进行事件处理
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – Kendo TabStrip与KendoGrid里面使用JavaScript进行事件处理,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2316字,纯文字阅读大概需要4分钟。
内容图文
我有一个简单的页面与Kendo TabStrip里面
<div id="main-view" class="k-content">
@(Html.Kendo().TabStrip()
.Name("main-view-tabstrip")
.Items(tabstrip =>
{
tabstrip.Add().Text("My Notices").LoadContentFrom("MyNotices", "Notice").Selected(true);
}))
</div>
它根据需要为我加载内容,查询NoticeController. NoticeController有MyNotices动作,返回我的PartialView.
public PartialViewResult MyNotices()
{
// put some values into ViewData
return PartialView();
}
PartialView itseld看起来像这样:
<div style="margin: 20px; height: 700px;">
@(Html.Kendo().Grid<NoticeViewModel>(Model)
.HtmlAttributes(new { @class = "fullScreen" })
.Name("NoticesList")
.Columns(columns =>
{
columns.Bound(x => x.UniqueId).Title("UniqueId");
columns.Bound(x => x.FormName).Title("Form");
columns.Bound(x => x.Revision).Title("Revision");
columns.Bound(x => x.Language).Title("Language");
columns.Bound(x => x.Status).Title("Status");
}
)
.Pageable()
.Scrollable()
.Sortable()
.Selectable()
.ToolBar(
toolbar => toolbar.Create().Text("New")
)
.Editable(
ed => ed.Mode(GridEditMode.PopUp)
.TemplateName("NoticeCreate")
.Window(w => w.Title("Create Notice")
.Name("createNoticeWindow1")
.HtmlAttributes(new { id = "createNoticeWindow" })
.Modal(true)
)
.DisplayDeleteConfirmation(true)
)
.Resizable(resize => resize.Columns(true))
.DataSource(dataSource => dataSource.Ajax()
.PageSize(25)
.ServerOperation(true)
.Read("List", "Notice")
.Create("NoticeCreate", "Notice")
.Events(events => events.Error("errorHandler"))
.Model(model => model.Id(x => x.UniqueId))
))
</div>
<script>
function errorHandler(e) {
if (e.errors) {
var message = "Errors:\n";
$.each(e.errors, function (key, value) {
if ('errors' in value) {
$.each(value.errors, function () {
message += this + "\n";
});
}
});
alert(message);
}
}
</script>
当我运行代码时收到JS错误,找不到errorHandler.如你所见,我在PartialView中有它.
<script>
function errorHandler(e) {
if (e.errors) {
var message = "Errors:\n";
$.each(e.errors, function (key, value) {
if ('errors' in value) {
$.each(value.errors, function () {
message += this + "\n";
});
}
});
alert(message);
}
}
</script>
所以问题是如何在局部视图中使用javascript,当你在TabStrip中显示它时?
当我从网格中删除.Events(events => events.Error(“errorHandler”))时,一切正常.
解决方法:
修复了这个问题,我不是为什么,但是当我把Java脚本块放在开头时就开始工作了.
所以,如果有人遇到这样的问题,只需输入< script />在声明Kendo.Grid()之前阻止.
内容总结
以上是互联网集市为您收集整理的c# – Kendo TabStrip与KendoGrid里面使用JavaScript进行事件处理全部内容,希望文章能够帮你解决c# – Kendo TabStrip与KendoGrid里面使用JavaScript进行事件处理所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。