1

Rails ビューに DOM 要素があり、Jquery を使用して data 属性にアクセスしたいと考えています。

Rails ビューの例:

<% @comments.each do |comment| %>
  <a class="comment" data-user_comment = <%= comment.content %> ><%= comment.updated_at %> - <%= comment.content %></a>
<% end %>

JQuery の例:

$('.comment').click(function(){
  alert($(this).attr("data-comment"));
})

これはかなり標準的ですが、データ属性にスペースが含まれている場合、アラートには最初の単語しか表示されないという問題があります。Rails は comment.content を文字列としてレンダリングしていないようです。これは Rails の通常の動作ですか、それとも何か大きな問題がありませんか??!

4

1 に答える 1

2

次のように指定する必要があります。

<a class="comment" data-user_comment = "<%= comment.content %>" ><%= comment.updated_at %> - <%= comment.content %></a>

引用符がありません。引用符がない場合は、最初の単語のみが取得され、残りは別の属性として取得されます。

したがって、fire bug を使用すると、コメントに「Lorem Ipusem」が含まれていることがわかります。

于 2013-09-12T09:43:10.977 に答える