在telerik网格排序后点击事件丢失

时间:2015-06-19 16:06:03

标签: jquery telerik-mvc

我有一个启用了排序的telerik扩展网格。每行都有一个“Approve”链接,在单击时显示模式弹出窗口。我使用Template,

创建了此链接
   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);

我的问题是,在网格排序后单击“批准”链接时,模式弹出显示为单独的页面。这在排序网格之前工作正常。

经过研究,我发现在排序后我可能需要重新点击click事件来显示模态。但是,我不知道该怎么做。

在单击网格的每个列标题进行排序后,我尝试将click事件重新绑定到“Approve”链接。到目前为止,我可以跟踪单击排序列的时间。但是,我的问题是,在排序后单击“批准”链接时,我无法触发任何事件。

 $('.modal-link').bind('click', function () {
                 alert('outBound');
             });

             $(".t-header .t-link").on('click', function () {
                 alert('test');
                 $('.modal-link').bind('click', function () {
                     alert('Bound');
                 });

请帮忙!

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。点击链接,我需要将html属性添加到该链接。因此,我没有尝试重新点击事件的重新绑定,而是在视图中定义telerik网格时,将这些html属性添加到客户端模板中的链接。

  .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);