为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Kendo Grid - onclick 需要额外的点击才能调用 jquery 方法

使用 Kendo Grid - onclick 需要额外的点击才能调用 jquery 方法

桃花长相依 2021-08-20 19:00:06
我有 7 列(使用 html Kendo Grid),ID 列是每行的 PK 及其可见(false)。所以..当你点击任何“名称”数据时,它会抓取你选择的行的PK(不可见的ID),并且会弹出一个模式屏幕,以便你可以看到更详细的信息。目前,它按预期工作,但是,当页面第一次加载时,我必须双击它才能显示模式屏幕。一旦模式屏幕显示,之后,onclick 事件按预期工作。但我刚刚注意到,当我按 F12 键查看日志时,每次 onclick 事件调用时,单击次数都会增加(例如... x2 x3 等)。当我调试时,它在我的代码中达到了调试点,但立即消失了,所以我很难调查。谢谢你的帮助。------具有 onclick 事件的列------Columns(columns => {columns.Bound(o => o.SiteID).Visible(false); columns.Bound(o => o.Name).Title("Your Name").HeaderHtmlAttributes(new {title = "Name(s)"}).ClientTemplate("<a class='nameLink' onclick=\"EditSite(#:SiteID#);\" style='cursor:pointer;' SiteID=\'#=SiteID#\'>#=Name#</a>");----Jquery onclick 事件 ------function EditSite(SiteID) {debugger;$('.nameLink').on('click', function () {    $('#popUpEdit').dialog({        width: 1000,        height: 920,        show: 'fadein',        hide: 'fadeout',        buttons: { "Close": function () { $(this).dialog("close"); } },        close: function () {            $("#popUpEdit input").val("");            $('#popUpEdit input').prop('checked', false);            $('#statusMessage').html("");        }    });    NameDetails(SiteID);});};
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

每次调用 EditSite 函数时,您都在绑定一个 onClick 函数。尝试使用 .off() 解除任何现有处理程序的绑定。


$('.nameLink').off().on('click', function () { }

还可以尝试包装您的函数,以便您可以传递您的 SiteID 参数。


(不确定这个的正确语法)


onclick="EditSite(#:SiteID#)"

包装函数


function EditSite(SiteID) {

  return function() {

      $('#popUpEdit').dialog({

        width: 1000,

        height: 920,

        show: 'fadein',

        hide: 'fadeout',

        buttons: { "Close": function () { $(this).dialog("close"); } },

        close: function () {

            $("#popUpEdit input").val("");

            $('#popUpEdit input').prop('checked', false);

            $('#statusMessage').html("");

        }

      });

      NameDetails(SiteID);

  }

}


查看完整回答
反对 回复 2021-08-20
  • 1 回答
  • 0 关注
  • 182 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信