選択した jqueryでスタイル設定されたドロップダウンがあり、見た目も機能も良好です。
このドロップダウンには、Defender と Protector の 2 つのオプションがあります。
ユーザーが 1 つのオプションを選択すると、2 番目のドロップダウンが表示され (これは奇妙なことにスタイルが選択されていません)、防御者または保護者が ID を持っているかどうかを尋ねます。
生成されたドロップダウンに選択したスタイルを適用する方法がわかりません。jquery 関数に chzn クラスを追加しようとしましたが、成功しません。
選択したスタイルで生成されたドロップダウンをスタイルする方法は?
これはスクリプトです:
$(function () {
$('#select_guy').change(function () {
$('#already_exists').show();
$('.people_class').hide();
if ($('#select_guy').val() == 'Defender') {
$("#already_exists").html('');
$("<option/>").val('0').text('Select option').appendTo("#already_exists");
$("<option/>").val('Defender-hasID').text('Defender has ID').appendTo("#already_exists");
$("<option/>").val('Defender-noID').text('Defender has NO ID').appendTo("#already_exists");
}
if ($('#select_guy').val() == 'Protector') {
$("#already_exists").html('');
$("<option/>").val('0').text('Select otcion').appendTo("#already_exists");
$("<option/>").val('protector-hasID').text('Protector has ID').appendTo("#already_exists");
$("<option/>").val('protector-noID').text('Protector has NO ID').appendTo("#already_exists");
}
});
$('#already_exists').change(function () {
$('.people_class input').val('');
$("#id_cedente").val('').trigger("liszt:updated");
$("#id_protector").val('').trigger("liszt:updated");
$('.people_class').hide();
$('#' + $(this).val()).show();
/*if ( $('#already_exists').val() == 'Defender-noID' )
$(".chzn-select").val('').trigger("liszt:updated");*/
});
});
$(".chzn-select").chosen();
$(".chzn-select-deselect").chosen({
allow_single_deselect: true
});
$(".chzn-select").chosen({
no_results_text: "No results"
});
jsfiddleを見てください
- -アップデート
@Serhiy
$('#already_exists').chosen();
は、関数の最後に次のように追加することでほぼ解決しました
ここに表示
ただし、ユーザーがオプションを選択した場合に発生する新しい問題は問題ありませんが、ユーザーが突然気が変わって最初のレベル{Defender、Protector}で他のオプションを選択することにした場合、jquery は新しいドロップダウンを作成するため、3 つになりました! お気に入り: