http://zccst.iteye.com/blog/2183111

最近遇到这样一个问题,预览内容可点击,问题是通过$.Mustache.render("templateId",data)渲染后的返回结果是一个字符串。

实现方案有两个:一个是在Backbone的events中绑定事件,一个是对返回后的String使用jQuery的$(html).find("#target").click();

方案一:在Backbone的events中绑定事件

var PreviewView = Backbone.View.extend({
        events: {
            'click .new_bt a' : 'demoClick',
        },
        initialize: function(options){
            this.model.bind('change:list', this.renderPreviewView, this);

            this.renderPreviewView();
        },
        renderPreviewView: function(){
            this.$el.empty();

            var data = this.model.toJSON();

            //方法1:使用$.Mustache.render();
            var html = $.Mustache.render('crownCommonKeyPreview-Pc', this.formatData(data.list));
            this.$el.html(html);

            //方法2:使用$("#xx").mustache("",data);
            //this.$el.empty().mustache('crownCommonKeyPreview-Pc', this.formatData(data.list));

            //方法3:使用原生的Mustache
        },
...
})

原理:Backbone使用的是事件代理,把html填充到el中后,el自然代理html中元素绑定的事件。

方案二:对返回后的String使用jQuery的$(html).find("#target").click();

var PreviewView = Backbone.View.extend({
        events: {
        },
        initialize: function(options){
            this.model.bind('change:list', this.renderPreviewView, this);

            this.renderPreviewView();
        },
        renderPreviewView: function(){
            this.$el.empty();

            var data = this.model.toJSON();

            //方法1:使用$.Mustache.render();
            var html = $.Mustache.render('crownCommonKeyPreview-Pc', this.formatData(data.list));
            this.$el.html(html);
            this.$el.find(".new_bt a").click(function(){alert("aaa")});

            //方法2:使用$("#xx").mustache("",data);
            //this.$el.empty().mustache('crownCommonKeyPreview-Pc', this.formatData(data.list));

            //方法3:使用原生的Mustache
        },
...
})

mustache.js渲染带事件的模板的更多相关文章

  1. mustache.js使用基本(三)

    作者:zccst 本节要点是子模块(partials)和分隔符(delimiter)等 1,子模块(partials) /* {{>partials}}以>开始表示子模块,如{{> ...

  2. Javascript模板引擎mustache.js详解

    mustache.js是一个简单强大的Javascript模板引擎,使用它可以简化在js代码中的html编写,压缩后只有9KB,非常值得在项目中使用.本文总结它的使用方法和一些使用心得,内容不算很高深 ...

  3. Mustache.js前端模板引擎源码解读

    mustache是一个很轻的前端模板引擎,因为之前接手的项目用了这个模板引擎,自己就也继续用了一会觉得还不错,最近项目相对没那么忙,于是就抽了点时间看了一下这个的源码.源码很少,也就只有六百多行,所以 ...

  4. 模板引擎mustache.js

    Javascript模板引擎mustache.js详解   阅读目录 1. 从一个简单真实的需求讲起 2. mustache的用法 3. mustache的思想 4. {{prop}}标签 5. {{ ...

  5. vue系列---Mustache.js模板引擎介绍及源码解析(十)

    mustache.js(3.0.0版本) 是一个javascript前端模板引擎.官方文档(https://github.com/janl/mustache.js) 根据官方介绍:Mustache可以 ...

  6. 探究Javascript模板引擎mustache.js使用方法

    这篇文章主要为大家介绍了Javascript模板引擎mustache.js使用方法,mustache.js是一个简单强大的Javascript模板引擎,使用它可以简化在js代码中的html编写,压缩后 ...

  7. 使用mustache.js 模板引擎输出html

    看了https://mustache.github.io/你就知道mustache是非常强大的模板引擎,支持多种语言,下面是个简单入门例子: MVC Model public class Studen ...

  8. 前端JS模板引擎Mustache.js的用法

    Mustache.js在前端是一个非常强大的模板 Mustache用法参考

  9. mustache.js基本使用(一)

    作者:zccst 模板已是第二次接触,第一次使用模板记得是在十分系统里渲染页面时使用,当时已做到熟练使用,但实际上仍不知道原因. 再次学习模板已不是从0开始,所以还算顺手,但毕竟还只限于使用,今天继续 ...

随机推荐

  1. JQuery-Table斑马线

    HTML <html> <head> <link href="StyleSheet.css" rel="stylesheet" t ...

  2. K - Work 分类: 比赛 2015-07-29 19:13 3人阅读 评论(0) 收藏

    K - Work Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Sta ...

  3. Sublime Text shift+ctrl妙用、Sublime Text快捷组合键大全

    Package Control 安装方法 首先通过快捷键 ctrl+` 或者 View > Show Console 打开控制台,然后粘贴相应的 Python 安装代码. 1 :按住shift+ ...

  4. STM32/GD32上内存堆栈溢出探测研究

    无数次遭受堆栈溢出折磨,随着系统变得复杂,故障点越来越难以查找!主要溢出情况如下:1,一般RAM最后两块空间是堆Heap和栈Stack,堆从下往上用,栈从上往下用,任意一个用完,都会进入对方的空间2, ...

  5. ViewState

    ViewState就像一个记录本,由于WebFormd的无状态性,刷新了页面.那么这个页面就和上一个页面没有任何关系了.为了使刷新前的页面和本页面产生联系,ViewState的作用就是记录刷新前页面的 ...

  6. 【MySQL】MySQL的Sequence

    Oracle的Sequence用爽了,发现MySQL没有Sequence,那么,自己写一个呗. > 最简单的实现 先建一个表存储当前值: CREATE TABLE `t_sequence` ( ...

  7. UVA 607 二十二 Scheduling Lectures

    Scheduling Lectures Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submi ...

  8. ADC驱动器或差分放大器设计指南

    作为应用工程师,我们经常遇到各种有关差分输入型高速模数转换器(ADC)的驱动问题.事实上,选择正确的ADC驱动器和配置极具挑战性.为了使鲁棒性ADC电路设计多少容易些,我们汇编了一套通用“路障”及解决 ...

  9. servlet&jsp高级:第二部分

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  10. python_way day17 html-day3 前端插件(fontawsome,easyui,bootstrap,jqueryui,bxslider,jquerylazyload),web框架

    python_way day17 一.模板插件 图标的插件 fontawsome: 后台管理: easyui jqueryui 很多网站都会用: bootstrap :引入jQuery:(2.x,1. ...