Masz poniżej kod w mojej aplikacji Rails.

<% if @s_discussions %>
  <% if @s_discussions.size >= 1 and !@s_discussions.include?("data") %>
     <% @s_discussions.each do |d| %>
      <div class="panel panel-info answer-inline">
        <%= form_tag(controller: "answer", action: "create", method: "post") do %>
        <%= hidden_field_tag :discussion_id, d["d_id"] %>
             <div class="input-group" style="padding: 5px 0px 2px 0px;">                    
               <textarea class="form-control" id="answerbox-inline" style="font-weight: 300;" placeholder="Type your reply..." name="body"></textarea>
            </div>
                                                                                                  
            <div id="answerfooter-inline" class="hidden text-right mt-20">                   
             <button id="answerbox-cancel" type="button" class="btn btn-default btn-conf">Cancel</button>
             &nbsp;&nbsp;&nbsp;
             <button type="submit" class="btn btn-info btn-conf">Reply</button>
             <div class="clearfix pd0 mg0"></div>
            </div>                        
      <% end %>
     </div>
   <% end %>
  <% end %>
 <% end %>

To jest mój javascript

$(document).on("focus", '#answerbox-inline', function() {
$( this ).animate({
  height: "200px",
}, 200, function() {
  $("#answerfooter-inline").removeClass("hidden");
});
});

Chcę pokazać ukrytą klasę , gdy kliknął na obszar tekstowy. To działa dobrze dla pierwszego elementu listy. Ale nie dla innych przedmiotów. Po kliknięciu obszaru tekstu innego przedmiotu rozszerzy klasę Hidden pierwszego elementu. Czy ktoś może mi pomóc rozwiązać to?

0
Dinu 21 lipiec 2020, 10:34

1 odpowiedź

Najlepsza odpowiedź

Identyfikator każdego elementu powinien być unikalny, myślę, że używasz tego samego identyfikatora dla wielu elementów. Użyj klas zamiast identyfikatorów i pozwól najbliższa metoda jQuery pomoże ci

1
C.Pietro 21 lipiec 2020, 07:42