0

我正在使用 html 模板和 javascript 用几个元素填充 div。

在我尝试向该模板添加图像之前,这一切都很好。

现在我每次都收到以下错误:

Uncaught SyntaxError: Unexpected token ) underscore-min.js:1
w.template underscore-min.js:1
query.find.success Liste.js:89
(anonymous function) parse-1.2.8.min.js:2
r parse-1.2.8.min.js:2
(anonymous function) parse-1.2.8.min.js:2
w.each.w.forEach parse-1.2.8.min.js:1
n.extend.resolve parse-1.2.8.min.js:2
r parse-1.2.8.min.js:2
(anonymous function) parse-1.2.8.min.js:2
w.each.w.forEach parse-1.2.8.min.js:1
n.extend.resolve parse-1.2.8.min.js:2
r parse-1.2.8.min.js:2
(anonymous function) parse-1.2.8.min.js:2
w.each.w.forEach parse-1.2.8.min.js:1
n.extend.resolve parse-1.2.8.min.js:2
(anonymous function) parse-1.2.8.min.js:2
r parse-1.2.8.min.js:2
n.extend.then parse-1.2.8.min.js:2
r parse-1.2.8.min.js:2
(anonymous function) parse-1.2.8.min.js:2
w.each.w.forEach parse-1.2.8.min.js:1
n.extend.resolve parse-1.2.8.min.js:2
c.onreadystatechange

编辑:我看了下划线.js 中的女巫行不起作用,错误在这一行:

render = new Function(settings.variable || 'obj', '_', source);

我的 html 模板如下:

<% for(var i = 0; i < wohnungen.length; i++)
                        { %>        
                        <% var wohnung = wohnungen[i]; %>

                        <img width="100px" height="100px" src="<%=wohnung.bild=%>"></img>

                        <div class="list-item" id="wohnung-"+'<%= i+1 %>'>
                            <div class="absolute-wrapper">
                            <dl class="dl-horizontal">
                            <dt>Anschrift</dt>
                            <dd><%= wohnung.strasse %></dd>
                            <dt>Miete</dt>
                            <dd><%= wohnung.miete %> €&lt;/dd>
                            <dt>Kaution</dt>
                            <dd><%= wohnung.kaution %> €&lt;/dd>
                            <dt>Flaeche</dt>
                            <dd><%= wohnung.flaeche %> m<sup>2</sup></dd>
                            </dl>
                            </div>
                        </div> 


                        <% }; 
            %>      

还有我的Javascript代码:

query.find({
          success: function(results) {
            var objects = [];

            // Do something with the returned Parse.Object values
            for (var i = 0; i < results.length; i++) { 
                objects.push(results[i]);

            };

            for (var i = 0; i < results.length; i++) { 




                var bildurl = objects[i].get('Bild').url();

                wohnungen.push({strasse: objects[i].get('Strasse'), miete: objects[i].get('Miete'), kaution: objects[i].get('Kaution'), flaeche: objects[i].get('Flaeche'), bild: bildurl});

            };

            var templateString = document.getElementById('list_tmpl').innerHTML;
            $(ausgabe).append(_.template(templateString, {wohnungen: wohnungen}));

          },
          error: function(error) {
            alert("Error: " + error.code + " " + error.message);
          }
        });

该查询来自 Parse.com API。我收到了所有的对象,它一直有效,直到我添加了图像。我只是没有发现任何对我来说似乎是错误的)。

如果有人能给我某种解决方案,我将不胜感激。

4

1 回答 1

1

图像中的src属性有一个杂散尾随=

<img width="100px" height="100px" src="<%=wohnung.bild=%>"></img>
------------------------------------------------------^

那应该是这样的:

<img width="100px" height="100px" src="<%=wohnung.bild %>"></img>

当您调用 时_.template,它会将您的模板转换为 JavaScript,然后将该 JavaScript 交给new Function以获取已编译的模板,从而确定您的错误位置。您<%=wohnung.bild=%>最终会被转换为一些如下所示的 JavaScript:

__p += '' + ((__t = ( x= )) == null ? '' : __t) + '';
// bad syntax ---------^

这不是有效的 JavaScript,因此您会从new Function.

于 2013-07-20T17:24:40.127 回答