0
在我们的应用程序中,选择框被动态添加到新的rfq表单中。问题不在于视图,代码打印在屏幕上。该代码基于railscasts.com#197进行了一些修改。该应用程序在屏幕上打印代码而不是视图在rails 3.1.0
这里是询价代码/ _form_new.html.erb:
<div id="std">
<%= render :partial => 'standards', :collection => @rfq.standards, :locals => { :f => f } %>
</div>
<p><%= link_to_add_fields "Add Std", f, :standards, @rfq %></p>
下面是点击 “添加标准” 后的屏幕截图:
这里是link_to_add_fields:
def link_to_add_fields(name, f, association, obj)
if association == :standards
new_object = obj.standards.build
else
new_object = obj.test_items.build
end
link_to_function(name, "add_fields(this, \"#{association}\", \"escape_javascript(render :partial => association.to_s, :collection => new_object, :locals => { :f => f })\")")
end
这里是add_fields:
function add_fields(link, association, content) {
var new_id = new Date().getTime();
var regexp = new RegExp("new_" + association, "g")
$(link).parent().before(content.replace(regexp, new_id));
}
rfq与标准的关系是HABTM。在railscasts.com例子中,关系是has_many和belongs_to。
非常感谢您的帮助。
去掉引号之后尝试。没有呈现。没有落后的斜线,第三个arg完全消失了,仍然没有一百。 – user938363
以下是带有\:Add Std的html源代码 – user938363