这是我的代码
<div class="label-container">
<label><%= t('select_a_prerequisite') %><span class="necessary-field">*</span>:
<b class="sel-list">
<%= link_to_function t('all'), "$$('input.list-subject').each(function(checkbox) { checkbox.checked = true; });" %>,
<%= link_to_function t('none'), "$$('input.list-subject').each(function(checkbox) { checkbox.checked = false; });" %>
</b>
</label>
</div>
<div class="categories">
<% @aau_subjects.each do |c| %>
<div class="each_category">
<%= check_box_tag "prerequisite[]",c.id, :class => "list-subject" %> <label><%= "#{c.aau_subject_name} #{c.aau_subject_code} " %></label>
</div>
<% end %></div>
当我点击&#34;所有&#34; ,它应该对所有复选框都适用,但它不工作和复选框显示默认为true。请建议我出错的地方,或任何其他解决方案点击真假。
答案 0 :(得分:1)
首先,我不确定您使用的是哪个rails版本但是不推荐使用link_to_function。请参阅此http://apidock.com/rails/ActionView/Helpers/JavaScriptHelper/link_to_function
我建议改变这个
<%= link_to_function t('all'), "$$('input.list-subject').each(function(checkbox) { checkbox.checked = true; });" %>,
到
<% link_to_function "All", "select_all_loans()" %>
并在资产中创建一个js文件。并添加此。我希望这会对你有所帮助
$(document).ready(function(){
select_all_loans = function(){
$("input:checkbox").prop('checked',true);
}
});
或者这样做
<% link_to_function "All", "$("input:checkbox").prop('checked',true);" %>