我正在通过Javascript响应Controller Action。我想渲染一部分。根据购物车是空的还是已经有商品,我有不同的选择器来附加部分。
常规标记如下:
<div id="expresscart">
<ul id="expresslist">
<li class="expressitem">..</li>
<li class="expressitem">..</li>
</ul>
</div>
出于某种原因,我没有问题在“li.expressitem”之后附加li。
但是很快,因为我想将第一个 li 插入 ul ,我收到了以下错误:
语法错误,意外的keyword_ensure,期待')'
响应该行动的JS如下:
$('.linktocart a').html('<%= escape_javascript link_to_cart %>');
<% if current_order.empty? %>
$("#expresslist").append("<%= escape_javascript render :partial => 'spree/line_items/express', :locals => {:line_item => @line_item} %>");
<% else %>
$(".expressitem:last").after("<%= escape_javascript render :partial => 'spree/line_items/express', :locals => {:line_item => @line_item} %>");
<% end %>
要呈现的部分如下:
%li.expressitem{"data-expresslineid" => line_item.id}
%div.expressimage
- if line_item.variant.images.any?
%figure
= image_tag line_item.variant.images.last.attachment.url(:sideline)
.expressdescription
%h1
= line_item.variant.product.name
%span.expressprice
= line_item.money
%p.expressitemdesc.clearfix
= line_item.item_options
- if line_item.subscription_line
%p.expressautoship
= t(:autoship_every, :month => pluralize(line_item.subscription.interval, 'month'))
%div.expressitemoptions
%ul.inline
%li.expressremove
= link_to(t(:remove), '#')
我只是想知道,我在这里缺少什么?