我有一个启用排序的 Telerik 扩展网格。每行都有一个链接“批准”,单击该链接时会显示模式弹出窗口。我使用模板创建了此链接,
columns.Bound(o => o.UserSeq).Template(
@<text>
@Html.ActionLink("Approve", "ApproveUser", "Home", new { userSeq = @item.UserSeq }, new { @class = "modal-link" })
</text>
.ClientTemplate(
<a href=" + Url.Action("ApproveUser", "Home", new { userSeq = "<#= UserSeq #>" }, null) + " class='modal-link'> Approve </a>"
).Title("Action").Width(100);
我的问题是,当网格排序后单击链接“批准”时,模式弹出窗口显示为单独的页面。在对网格进行排序之前,这可以正常工作。
经过研究,我发现排序后也许需要重新绑定(bind)点击事件以显示模态。但是,我不知道该怎么做。
在单击网格的每个列标题进行排序后,我尝试将单击事件重新绑定(bind)到“批准”链接。到目前为止,我可以跟踪何时单击排序列。但是,我的问题是排序后单击该链接“批准”时无法触发任何事件。
$('.modal-link').bind('click', function () {
alert('outBound');
});
$(".t-header .t-link").on('click', function () {
alert('test');
$('.modal-link').bind('click', function () {
alert('Bound');
});
请帮忙!
最佳答案
我找到了解决问题的方法。单击链接后,我需要向该链接添加 html 属性。因此,我没有尝试在重新绑定(bind)单击事件时执行此操作,而是只是将这些 html 属性添加到客户端模板中的链接,同时在 View 中定义 telerik 网格。
.ClientTemplate(
<a href=" + Url.Action("ApproveUser", "Home", new { userSeq = "<#= UserSeq #>" }, null) + " **data-target='#modal-container' data-toggle='modal'** class='modal-link'> Approve </a>"
).Title("Action").Width(100);
关于jquery - Telerik 网格排序后点击事件丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30942595/