J'ai le code suivant.Rails partiel obtient double échappé lors de l'utilisation link_to_function
def add_resume_link(name, form)
link_to_function name do |page|
html = form.fields_for :resumes, @general_resume.resumes.build, :child_index => 'NEW_RECORD' do |form_parent|
render :partial => 'resume_form', :locals=>{:form=>form_parent}
end
page << "$('resumes').insert({ bottom: '#{escape_javascript(html)}'.replace(/NEW_RECORD/g, id) });"
end
end
Et le resume_form
j'ai quelque part:
=add_skill_link("Add Skill", form, "resume_#{id}_skills")
et la fonction ressemble à:
def add_skill_link(name, form, id)
link_to_function name do |page|
html = form.fields_for :skill_items, @general_resume.skill_items.build, :child_index => 'NEW_RECORD' do |form_parent|
render :partial=>'skill_form', :locals=>{:form=>form_parent, :parent=>id}
end
page << "$('#{id}').insert({ bottom: '#{escape_javascript(html)}'.replace(/NEW_RECORD/g, new Date().getTime()) });"
end
end
Donc, fondamentalement, j'ai un code javascript qui ajoute dynamiquement un morceau de HTML (add_resume
) et contient un autre code javascript qui ajoute dynamiquement une zone de sélection à la page.
Mon problème est que le add_skill_link
fonctionne très bien si j'utilise du côté du serveur, je veux dire le rendu du côté serveur. Et obtient double échappé lors de l'utilisation dans la manière décrite ci-dessus.
J'ai essayé d'enlever le escape_javascript
du bit add_skill_link
toujours pas bon.
Des idées?
Merci pour votre réponse, enfin j'ai changé le tout, probablement vous avez raison, mais je ne sais pas si cela résout mon problème. – dombesz