单击 Kendo UI 按钮调用服务器端 MVC 操作
Posted
技术标签:
【中文标题】单击 Kendo UI 按钮调用服务器端 MVC 操作【英文标题】:Call a server side MVC action on the click of a Kendo UI button 【发布时间】:2013-12-11 18:03:51 【问题描述】:我刚刚下载了用于 ASP.NET MVC 的 Kendo UI 包装器 v2013.3.1119.440 的试用版。我在这个版本中看到了一个新的 Kendo.Mvc.UI.Fluent.ButtonBuilder
包装器,而我在 20 天前在另一台 PC 上下载的版本中没有这个包装器。
上述包装器代表一个按钮。
我看不到将这个Kendo.Mvc.UI.Fluent.ButtonBuilder
包装器与服务器端MVC 操作直接连接的方法。我该怎么做?
我确实在ButtonBuilder
类上看到了Events
方法,它接受Action<ButtonEventBuilder>
事件。在ButtonEventBuilder
中,我看到另一个名为Click
的方法,它有两个重载,但都用于连接按钮的客户端事件处理程序。
我看不到通过单击按钮直接连接服务器端回调/回发的方法。
我错过了什么吗?唯一的方法是手动触发服务器端回发或从 javascript 函数回调?
【问题讨论】:
【参考方案1】:Button
是最新版本的 Kendo UI(上周)中新增的。它不直接支持您正在寻找的内容,但可以像这样完成类似的事情:
@(html.Kendo().Button()
.Name("textButton")
.Content("Text button")
.HtmlAttributes( new type = "button" )
.Events(ev => ev.Click("onClick")))
然后一个类似这样的JS函数:
function onClick()
$.ajax(
url: '/controller/action'
data: // data here
).done(function(result)
// do something with the result
).fail(function() // handle failure );
更多信息可以在他们的演示网站上找到:http://demos.kendoui.com/web/button/events.html
【讨论】:
谢谢。这就是我的怀疑。再过 6 分钟,我才能将您的答案标记为正确答案。 那时,使用<a href="#" class="k-button"></a>
并这样做可能会更容易。以上是关于单击 Kendo UI 按钮调用服务器端 MVC 操作的主要内容,如果未能解决你的问题,请参考以下文章
Kendo UI Grid添加新记录而不是将数据发布到服务器端
Kendo UI MVC Grid DataSourceRequest JavaScript 发布附加数据
弹出窗口在 Kendo UI 网格中的工作原理以及如何在 MVC4 的 Kendo UI ajax 网格中将控件带入弹出窗口
单击用于 MVC 的 kendo ui 网格中的单元格时需要行索引和列标题