【问题标题】:jQuery tmpl plugin - problems with template results from dynamic content (bug?)jQuery tmpl 插件 - 动态内容导致的模板问题(错误?)
【发布时间】:2011-05-11 10:10:05
【问题描述】:

我使用 jQuery 模板 (http://api.jquery.com/jquery.tmpl/) 在基于远程内容的页面上呈现列表,这一切都运行良好,但是当我将类应用于内容并为类动态模板内容设置点击事件时不尊重硬编码内容正常工作的操作。

我稍微编辑了 tmpl 插件附带的基本演示,以添加静态列表作为概念证明:http://jsfiddle.net/3eVrR/2/

单击静态“栏”链接会生成我所期望的警报。单击任何按钮(卡通或戏剧)以生成列表,然后单击它们的超链接(它与硬编码链接具有相同的类)不会触发警报。

谁能看出问题所在? Firebug 没有显示任何错误,检查静态和动态内容的类是相同的。

谢谢

【问题讨论】:

    标签: jquery css class templates


    【解决方案1】:

    正如 aleksv 所指出的,传统的.click() 处理程序仅适用于在初始化处理程序时可以选择的元素。在这种情况下,.live()(或.delegate())处理程序将是更好的方法:

    // This handler will apply to any .getPage element, even if it is created
    //  after this handler declaration has been executed.
    $('.getPage').live('click', function(){
        alert('clicked element with getPage class');
    });
    

    【讨论】:

      【解决方案2】:

      我玩过你的代码,现在它可以工作了:http://jsfiddle.net/3eVrR/5/。加载所有内容后,您必须初始化事件。您在没有电影条目时初始化了事件。然后你添加了电影条目,而 JS 不知道它们在那里。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-05-28
        • 2012-10-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-22
        • 2014-02-23
        • 1970-01-01
        相关资源
        最近更新 更多