我有一个剑道网格
@(Html.Kendo().Grid<Spectrum.Model.Bid>()
.Name("BatchBidGrid")
.HtmlAttributes(new { style = "height:460px;" })
.Columns(columns =>
{
columns.Bound(p => p.LotNumber).Title("Lot #").Width(250);
columns.Bound(p => p.Amount);
columns.Bound(p => p.BidMessageID).Title("% Increase");
columns.Command(command => command.Destroy()).Width(110);
})
.ToolBar(toolbar =>
{
toolbar.Create();
toolbar.Save();
})
.Editable(editable => editable.Mode(GridEditMode.InCell))
.Pageable()
.Sortable()
.Navigatable(n => n.Enabled(true))
.Events(ev => ev.Edit("onEdit"))
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.ServerOperation(false)
.Events(events => events.Error("error_handler"))
.Model(model => model.Id(p => p.ID))
.Read("Editing_Read", "Grid")
.Update("Editing_Update", "Grid")
.Destroy("Editing_Destroy", "Grid")
)
.Events(ev => ev.SaveChanges("submitBatchBid"))
)
我想覆盖此网格的创建按钮单击事件我已完成以下java脚本功能。
$("tr .k-grid-add", "#grid").on("click", function (e) {
alert("add pressed!");
})
但它仍在调用kendo的默认网格创建功能。请建议一种方法来做到这一点。
答案 0 :(得分:1)
您需要添加此部分:
e.preventDefault();
在你的功能开始。这行代码停止正常的代码执行,并继续执行函数中的代码。
<强>更新强>
替换工具栏按钮:
.ToolBar(toolBar => toolBar.Template("<a href=\"\" class=\"k-button k-button-icontext k-grid-myadd\"><span class=\"k-icon k-add\"></span>Add new record</a>"))
然后用类k-gri-myadd
更改javascript:
$("tr .k-grid-myadd", "#grid").on("click", function (e) {
e.preventDefault();
alert("add pressed!");
})
答案 1 :(得分:0)
我可以通过使用两者来覆盖它:
e.preventDefault();
e.stopPropagation();