我有很多js文件,比如new.js,index.js,create.js等处理我的Ajax调用和其他jquery代码 由于有许多常见的代码片段,我试图使用部分js文件 例如,我有一个调用部分_new.js
的new.js文件new.js
<%= render :partial=>'new', :formats=>[:js],:handlers=>[:erb] %>
_new.js
<% if params[:group_id]%>
$("#group_participants_content").html("<%= escape_javascript(render(:partial=>'form'))%>");
$(".remote_selected").removeClass("selected remote_selected simple-navigation-active-leaf");
$("#group_mail").addClass(" remote_selected simple-navigation-active-leaf");
<%else%>
$("#users_content").html("<%= escape_javascript(render(:partial=>'form'))%>");
$(".remote_selected").removeClass("selected remote_selected simple-navigation-active-leaf")
$("#mail").addClass("remote_selected simple-navigation-active-leaf");
<%end%>
// Change our States
History.replaceState({action:'<%= "#{controller.action_name}/#{controller_name}" %>'}, '<%= "#{controller.action_name.titleize} #{controller_name}" %>', '?action=<%= "#{controller.action_name}/#{controller_name}" %>');
var url=History.getState().url;
$("#help").attr('href',"/helps/0?url="+url)
虽然有用但有用,我想将本地人添加为
<%= render :partial=>'new', :formats=>[:js],:handlers=>[:erb], :locals=> {:id=>"#group_participants_content"}%>
并将_new.js更改为
$('"'+id+'"').html("<%= escape_javascript(render(:partial=>'form'))%>");
然而,这不起作用 - 然后似乎没有加载js文件
任何有任何错误建议的人?
感谢任何帮助吗?
答案 0 :(得分:1)
这是
$("<%=id%>").html("<%= escape_javascript(render(:partial=>'form'))%>");
答案 1 :(得分:0)
id即将出现在引用中,你的代码会再次在引号中包装它,直接传递它。希望我能工作:
$(id).html("<%= escape_javascript(render(:partial=>'form'))%>");