我尝试将 jquery popover 添加到 rails 默认 cruds 而不是重定向到视图,我正在做的是在 jquery popover 中呈现表单:
<%= content_tag_for :tr, @order.order_items do |i| %>
<a class='btn btn-mini label-with-popover' id=<%=i.id%>><%= t('helpers.links.edit_html') %> </a>
<% end %>
<script type="text/javascript">
$(function () {
$('.label-with-popover').popover({
html : true,
content: "<%= escape_javascript(render :partial => 'form_item') %>" ,
placement: 'top'
} );
});
</script>
这是我的form_item:
<%= simple_form_for :order_item, url: admin_shop_order_path, :html => { :class => 'form-horizontal' } do |f| %>
<div class='form-inputs'>
<%= f.input :item_id , :collection => @shop.products.collect{|b| b.variants}.flatten.map{|variant| ["#{variant_full_title(variant)}", variant.id]}%>
<%= f.input :quantity %>
</div>
<div class="form-actions">
<%= f.button :submit, :class => 'btn-primary' %>
<%= link_to t("helpers.links.cancel"), admin_shop_orders_path, :class => 'btn' %>
</div>
<% end %>
但问题出现在编辑按钮上。要呈现编辑表单,我们需要我们想要编辑的对象(我的意思是:order_item),而获得它的方法是使用 id,这就是我设置锚标签 id 的原因。现在我们必须在 popover 函数中获取那个锚 id,但是 $(this).id 不起作用。有什么建议吗?