Флажки form_for работают только на первой вкладке jquery
Я создаю form_for
это в основном позволяет пользователю отмечать, когда он закончил видео. Я вкладываю эту форму во вкладки jQuery и хочу иметь один флажок на каждой вкладке, и до сих пор я получил это. Однако функциональность является той, которая терпит неудачу: только флажок на первой вкладке фактически изменяет значение, когда это передано. Любые идеи о том, как это исправить?
<% for i in 1..@statement %>
<div id="htab-current-<%= i %>">
<%= form_for @user.workouts.where(week_num: @week).where(video_num_in_week: i).first.assignedworkouts.first, remote:true ,:html=>{:id=>'completed_form'} do |f| %>
<%= f.check_box :completed, :onclick => "$('#completed_form').submit()" %>
<% end %>
<div class='videowrapper2'>
<div id="myElement<%= i %>">Loading the player ...</div>
<script type="text/javascript">
jwplayer("myElement<%= i %>").setup({
skin: 'five',
width: "100%",
aspectratio: "4:3",
listbar: {
position: 'bottom',
},
playlist: '<%=asset_path(@user.workouts.where(week_num: @week).where(video_num_in_week: i).first.playlist_file ) %>'
});
</script>
</div>
</div>
РЕДАКТИРОВАТЬ: Я попытался перебор, и на самом деле это была проблема с идентификатором в форме. Однако, когда я изменил его, чтобы он генерировался динамически, даже если идентификаторы в форме и вызов jQuery одинаковы, они, похоже, не работают.
<% for i in 1..@statement %>
<div id="htab-current-<%= i %>">
<%= form_for @user.workouts.where(week_num: @week).where(video_num_in_week: i).first.assignedworkouts.first, remote:true ,:html=>{:id=>"#{i}completed_form'"} do |f| %>
<%= f.check_box :completed, :onclick => "$('#{i}completed_form').submit()" %>
<% end %>
<div class='videowrapper2'>
<div id="myElement<%= i %>">Loading the player ...</div>
<script type="text/javascript">
jwplayer("myElement<%= i %>").setup({
skin: 'five',
width: "100%",
aspectratio: "4:3",
listbar: {
position: 'bottom',
},
playlist: '<%=asset_path(@user.workouts.where(week_num: @week).where(video_num_in_week: i).first.playlist_file ) %>'
});
</script>
</div>
</div>
1 ответ
Попробуйте с:
<% for i in 1..@statement %>
<div id="htab-current-<%= i %>">
<%= form_for @user.workouts.where(week_num: @week).where(video_num_in_week: i).first.assignedworkouts.first, remote:true ,:html=>{:id=>'completed_form'} do |f| %>
<%= f.check_box :completed, :onclick => "$('#completed_form').submit()" %>
<div class="videowrapper2">
<div id="myElement<%= i %>">Loading the player ...</div>
<script type="text/javascript">
jwplayer("myElement<%= i %>").setup({
skin: 'five',
width: "100%",
aspectratio: "4:3",
listbar: {
position: 'bottom',
},
playlist: '<%=asset_path(@user.workouts.where(week_num: @week).where(video_num_in_week: i).first.playlist_file ) %>'
});
</script>
</div>
</div>
<% end %>