私たちは、Web サイトでさまざまなフィールドにjQuery UI MultiSelect ウィジェットを使用しています。一貫性のために、非複数選択にも使用します。使用するコード例は次のとおりです。
jQuery('#model').multiselect({
multiple : false,
minWidth : 'auto',
height : 'auto',
header : false,
selectedText: multiselect_set_label,
open : multiselect_fit_widget,
close : multiselect_free_keyboard,
create : multiselect_fit_label,
beforeopen : multiselect_bold_options
});
どこでも完全に同じというわけではないため、すべての複数選択に対して 1 つの設定だけを使用することはできません。(どこでも同じだったら、単一の初期化を行い、匿名関数を試します)
IE8 は、「'multiselect_set_label' は未定義です」(または multiselect_fit_widget またはその他の関数) というエラーをスローします。
その関数は次のように定義されます。
function multiselect_set_label(selected, total, elements)
{
/* lots of code here */
}
私もこれに変更しようとしました:
var multiselect_set_label = function(selected, total, elements)
{
/* lots of code here */
}
しかし、問題は解決しません (試行の合間にキャッシュをクリアしました)。
テスト中、他のすべてのブラウザは正常に動作し、IE8 は訪問者の 1.8% しか占めていないため、これは私たちにとって重大な問題ではありません。したがって、簡単な解決策がない場合は無視します。しかし、私たちのサイトは現在 IE8 ではまったく使用できないため、これが解決できれば素晴らしいと思います。(IE 8 の訪問者の割合が低いのは、問題が原因である可能性があることは承知していますが、訪問者からの苦情もありません)