Как я могу передать обратно строку jquery из js.erb в рельсах - PullRequest
0 голосов
/ 23 мая 2018

У меня есть этот код в файле create.js.erb, который я ожидаю от формы комментария, которую я добавляю с remote: true

<div class="comment">
  <%= @comment.content %>
  <%= link_to "delete", comment_path(@comment, :deletecomment => 
      "delete"), remote: true, method: :delete, data: { confirm: "You 
      sure?" } 
  %>
</div>

Кажется, что rails обрабатывает только допустимые jquery в этом файле,Я могу сделать свой код только с '' вокруг html, чтобы сделать его строкой jquery, а затем отправить его обратно, как это, но, как ни странно, при проверке возвращаемых данных получается строка с одинарными кавычками в составе строки.

Затем я использую html = data.replace(/\'/g, ""); для удаления одинарных кавычек, но есть ли лучший способ сделать это?

Например, я не могу комментировать в js.erb любые заметки, которые я хочу добавить тудакогда обычно вы можете закомментировать js.erb с помощью /*...*/

Я думал об удалении remote: true из формы, которую я использую, и выполнении обычного вызова ajax при отправке и установке dataType как html но все же я думаю, что до того, как эти рельсы уже испортили мою строку.

1 Ответ

0 голосов
/ 23 мая 2018

Сделайте частичное: - _example_partial.html.erb

<div class="comment">
   <%= comment.content %>
   <%= link_to "delete", comment_path(comment, :deletecomment => "delete"),remote: true, method: :delete, data: { confirm: "You sure?" } %>
</div> 

и в create.js.erb

$("#id_of_div_where_the_partial_will_append").append("<%= j render 'example_partial', comment: @comment%>");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...