<select>入力があり、これはそのchange
イベントのコードです。
$(document).on("change", "select[id $= 'Type']", function(){
var id = $(this).attr('id');
id = id.replace("Question", "");
id = id.replace("Type", "");
id = id.replace("Option", "###");
var split = id.split("###");
var qno = split[0];
var ono = split[1];
setOptionContentInput($(this).val(), qno, ono);
});
これは完全に機能します。
しかし、$(document).ready()
関数内で以下のコードを呼び出すと、機能せず、理由がわかりません。
$(document).ready(function() {
$("select[id $= 'Type']").change();
});
setOptionContentInput()
関数は次のとおりです。
function setOptionContentInput(type, qno, ono){
switch(type) {
case "<?php echo TEXT_OPTION; ?>":
$(".image_option_" + qno + "_" + ono).attr('disabled', 'disabled');
$(".image_option_" + qno + "_" + ono).hide();
$(".sound_option_" + qno + "_" + ono).attr('disabled', 'disabled');
$(".sound_option_" + qno + "_" + ono).hide();
$(".text_option_" + qno + "_" + ono).removeAttr('disabled');
$(".text_option_" + qno + "_" + ono).show(500);
$(".text_option_" + qno + "_" + ono).siblings("label").show(500);
break;
case "<?php echo IMAGE_OPTION; ?>":
$(".text_option_" + qno + "_" + ono).attr('disabled', 'disabled');
$(".text_option_" + qno + "_" + ono).hide();
$(".text_option_" + qno + "_" + ono).siblings("label").hide();
$(".sound_option_" + qno + "_" + ono).attr('disabled', 'disabled');
$(".sound_option_" + qno + "_" + ono).hide();
$(".image_option_" + qno + "_" + ono).removeAttr('disabled');
$(".image_option_" + qno + "_" + ono).show(500);
break;
case "<?php echo SOUND_OPTION; ?>":
$(".text_option_" + qno + "_" + ono).attr('disabled', 'disabled');
$(".text_option_" + qno + "_" + ono).hide();
$(".text_option_" + qno + "_" + ono).siblings("label").hide();
$(".image_option_" + qno + "_" + ono).attr('disabled', 'disabled');
$(".image_option_" + qno + "_" + ono).hide();
$(".sound_option_" + qno + "_" + ono).removeAttr('disabled');
$(".sound_option_" + qno + "_" + ono).show(500);
break;
default:
}
}
誰か助けてもらえますか?どうも。