Jquery模板不接受破折号( - )

时间:2013-04-18 20:06:47

标签: jquery jquery-templates

我有以下代码。我正在使用Jquery模板,但它不接受 - (破折号)在类 - 否。我收到错误Uncaught ReferenceError: no is not defined。使用jquery模板是否有解决此问题的方法。

var json = [{"class-no":"12","marks":"500","marks1":"200","marks2":"300"},{"class-no":"11","marks":"200","marks1":"300","marks2":"400"}]

$.template('kList','<tr title="${class-no}"><td>${marks}</td><td>${marks1}</td><td>${marks2}</td></tr>');  

for(var i=0; i<json.length; i++){   
    $.tmpl('kList',json[i]).appendTo("#table1")
}

1 个答案:

答案 0 :(得分:0)

只需在模板调用时在选项参数中提供自定义函数,并使用模板中的函数,

此处classNo是一个自定义函数,它使用字符串表示法访问对象属性。

$.template('kList','<tr title="${$item.classNo()}"><td>${marks}</td><td>${marks1}</td><td>${marks2}</td></tr>');  

for(var i=0; i<json.length; i++){   
    $.tmpl('kList',json[i], { 
        classNo : function(){ 
            return this.data["class-no"];
        }
    }).appendTo("#table1");
}

希望这会有所帮助。