【问题标题】:How to keep jQuery plugin after an ASP callback?如何在 ASP 回调后保留 jQuery 插件?
【发布时间】:2018-08-28 00:50:27
【问题描述】:

我在 ASP 页面上使用tipsy jQuery 插件。 我在主页的页面加载时激活它:

if (jQuery.fn.tipsy) {
    $('.north').tipsy({ gravity: 'n', fade: true });
    $('.south').tipsy({ gravity: 's', fade: true });
    $('.east').tipsy({ gravity: 'e', fade: true });
    $('.west').tipsy({ gravity: 'w', fade: true });
}

当我进行回调时出现问题,插件所针对的元素被刷新并且不再注册。

有没有办法在回调后让插件在这些元素上保持活动状态,或者我应该重新初始化它?

【问题讨论】:

    标签: jquery asp.net jquery-plugins


    【解决方案1】:

    您必须重新初始化插件。在Page_Load 内部在回发时触发客户端事件:

    if (Page.IsPostBack) {
        RadScriptManager.RegisterStartupScript(Page, Page.GetType(), "postback", "$.event.trigger({type:'postback.event'})", true);
    }
    

    js中的一个:

    $(document).on('postback.event', () => {
       // Init plugin
    });
    

    【讨论】:

    • 因为它是部分的并且我的 ScriptManager 不在回调面板中,所以脚本似乎没有被注册并且触发器没有被触发。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多