Eleb.js / Handlebars.js在手柄模板中解析属性名称时出错

时间:2012-09-15 22:49:13

标签: ember.js handlebars.js

我刚刚开始看看Ember.js,并且我遇到了包含模板化属性的把手模板的问题:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" />
<script type="text/javascript" src="js/handlebars-1.0.0.beta.6.js" />
<script type="text/javascript" src="js/ember-1.0.pre.js" />
<script type="text/x-handlebars" data-template-name="say-hello">
    <p>First name: {{name.firstName}}</p>
    <p>Last name: {{name.lastName}}</p>
    <p>Last full: {{name.fullName}}</p>

    <a href="#" {{action "edit" on="click"}}>Edit</a>

</script>
</head>
<body>
<h2>Hello World!</h2>
</body>
</html>

我在Chrome中遇到错误:

This page contains the following errors:

error on line 14 at column 10: error parsing attribute name
Below is a rendering of the page up to the first error.

我在Firefox中也遇到错误。

我想这是浏览器试图验证文档,有没有办法避免这种情况并仍然保留doctype?

2 个答案:

答案 0 :(得分:0)

我怀疑XHTML doctype是个问题。您是否尝试过使用HTML 5 doctype <!DOCTYPE html>

答案 1 :(得分:0)

看起来把手模板无效xhtml。

tomcat与我的文件一起发送的内容类型是(application / xhtml + xml)。当您在文档上使用扩展名.xhtml时会发生这种情况。

当发生这种情况时,文档中的文档类型是什么,xhtml验证在文档中发生,并且无法加载,这没有任何区别。

在我的情况下,我想我可以预编译把手模板,使其在xhtml中工作。