В моем видеопоказе есть оператор if:
<% if @video.user == current_user && current_user != nil && @video.comment_titles.count < 3 %>
<%= link_to "Add Comment Title", "#", :id => "comment_title_link", :class => "edit" %>
<%= simple_form_for @video, :remote => true do |f| %>
<%= f.input :comment_title_names, :label => false, :placeholder => "Add a Comments Title" %>
<%= f.button :submit, :value => 'Add', :id => 'add_comment_title' %>
<div class='hint'>Let your listeners know what comments you want by adding a guiding title for them. Pose a question, ask for feedback, or anything else!</div>
<% end %>
<% elsif @video.comment_titles.count == 3 && @video.user == current_user && current_user != nil %>
<p> You have reached your limit of comment titles. You can always add a new one by deleting one of your old ones. </p>
<% end %>
Этот оператор if по существу оценивает @video.comment_titles.count
, чтобы определить, является ли оператор if или оператор elsif истинным.Я позволил пользователям добавлять comment_titles с помощью ajax, и поэтому к моменту, когда значение @video.comment_titles.count == 3
равно true, оно не будет правильно оценивать оператор if, поскольку оператор if, который находится в моем видеопоказе, вызывается только после перезагрузки страницы.
Я хочу, чтобы оператор if вызывался динамически каждый раз, когда изменяется число comment_titles
, что эквивалентно высказыванию всякий раз, когда вызывается вызов AJAX для обновления comment_titles.Однако я предпочел бы сделать это на стороне клиента, чем делать это в файле .js.erb.Как бы я запустил это на стороне клиента?
ОК, так что никто не ответил, поэтому я предполагаю, что либо я не предоставил достаточно кода, мне не ясно, что я пытаюсь сделать, илиэто невозможно.Что это?