Rails4.1系を使用しております。
ターボリンクスが邪魔になってきたので,ターボリンクスを無効にしました。
すると動作していたJavascriptが動作しなくなってしまいました。ターボリンクスを有効にするとまた動作するようになります・・・。
もし原因がわかる方がいましたらご教示いただければ幸いです。
セレクトの入力項目によって入力するフォームの項目が出たり消えたりするものです。コードは以下のとおりです。
_js_congratulation.html.erb
#######################################33
<script>
$('select#congratulation_method').change(function () {
var selectval = $('select#congratulation_method option:selected').text();
if (selectval == '銀行振込') {
$('#bank_name').show();
$('#bank_branch_name').show();
$('#bank_type').show();
$('#bank_number').show();
$('#postal_code').hide();
$('#prefecture').hide();
$('#city').hide();
$('#house_number').hide();
}
if (selectval == 'アマゾンギフトカード') {
$('#postal_code').show();
$('#prefecture').show();
$('#city').show();
$('#house_number').show();
$('#bank_name').hide();
$('#bank_branch_name').hide();
$('#bank_type').hide();
$('#bank_number').hide();
}
if (selectval == 'iTunesカード') {
$('#postal_code').show();
$('#prefecture').show();
$('#city').show();
$('#house_number').show();
$('#bank_name').hide();
$('#bank_branch_name').hide();
$('#bank_type').hide();
$('#bank_number').hide();
}
})
;
$(function () {
var selectval = $('select#congratulation_method option:selected').text();
if (selectval == '銀行振込') {
$('#bank_name').show();
$('#bank_branch_name').show();
$('#bank_type').show();
$('#bank_number').show();
$('#postal_code').hide();
$('#prefecture').hide();
$('#city').hide();
$('#house_number').hide();
}
if (selectval == 'アマゾンギフトカード') {
$('#postal_code').show();
$('#prefecture').show();
$('#city').show();
$('#house_number').show();
$('#bank_name').hide();
$('#bank_branch_name').hide();
$('#bank_type').hide();
$('#bank_number').hide();
}
if (selectval == 'iTunesカード') {
$('#postal_code').show();
$('#prefecture').show();
$('#city').show();
$('#house_number').show();
$('#bank_name').hide();
$('#bank_branch_name').hide();
$('#bank_type').hide();
$('#bank_number').hide();
}
})
;
</script>
#################################################
new.html.erb
####################################################
<%= render 'js_congratulation' %>
〜省略〜
<div class="form-group">
<div class="col-sm-3 control-label">
<%= f.label :method, 'お祝い金受け取り方法' %>
</div>
<%= f.select :method, ['', '銀行振込', 'アマゾンギフトカード', 'iTunesカード'] %>
</div>
<div class="form-group" id="postal_code" style="display: none">
<div class="control-label">
<%= f.label :postal_first, '郵便番号' %>
</div>
<div class="form-inline">
<%= f.text_field :postal_first, placeholder: "100", :class => "form-control border-color-3" %>-
<%= f.text_field :postal_last, placeholder: "0001", :class => "form-control border-color-3" %>
</div>
</div>
<div class="form-group" id="prefecture" style="display: none">
<div class="col-sm-3 control-label">
<%= f.label :prefecture, '都道府県名' %>
</div>
<%= f.text_field :prefecture, placeholder: "東京都", :class => "form-control border-color-4" %>
</div>
<div class="form-group" id="city" style="display: none">
<div class="control-label">
<%= f.label :city, '市町村' %>
</div>
<%= f.text_field :city, placeholder: "千代田区", :class => "form-control border-color-5" %>
</div>
<div class="form-group" id="house_number" style="display: none">
<div class="control-label">
<%= f.label :house_number, '番地その他' %>
</div>
<%= f.text_field :house_number, placeholder: "◯ー◯◯", :class => "form-control border-color-6" %>
</div>
<div class="form-group" id="bank_name" style="display: none">
<div class="control-label">
<%= f.label :bank_name, '振込先銀行名(正式名称をご記載ください。)' %>
</div>
<%= f.text_field :bank_name, placeholder: "三菱東京UFJ銀行", :class => "form-control border-color-1" %>
</div>
<div class="form-group" id="bank_branch_name" style="display: none">
<div class="control-label">
<%= f.label :bank_branch_name, '銀行支店名' %>
</div>
<%= f.text_field :bank_branch_name, placeholder: "◯◯支店", :class => "form-control border-color-2" %>
</div>
<div class="form-group" id="bank_type" style="display: none">
<div class="control-label">
<%= f.label :bank_type, '口座種別' %>
</div>
<%= f.select :bank_type, ['普通', '当座'] %>
</div>
<div class="form-group" id="bank_number" style="display: none">
<div class="control-label">
<%= f.label :bank_number, '口座番号' %>
</div>
<%= f.text_field :bank_number, placeholder: "1234567", :class => "form-control border-color-3" %>
</div>
########################################