1

別の選択の値に基づいて、このようにオプションを空にしています:

$('option', '#reasonCode').empty().val('');

私が抱えている問題は、ユーザーが回答を元に戻した場合にオプションを復元することです。これに対する簡単な解決策はありますか、それとも ajax を使用してオプションを再構築する必要がありますか?

明確にするために、約 20 のオプションのリストを復元しようとしています。

動作を示すフィドルは次のとおりです。http://jsfiddle.net/hX2MY/6/

ご覧のとおり、ほとんど機能していますが、オプションはすべて 1 行にあります。

4

2 に答える 2

3

それらを削除する前に変数に保存してください。

var allLI = $('option', '#reasonCode').html()

また

var allLI = $('option', '#reasonCode').contents().clone()

その後

// delete
$('option', '#reasonCode').empty().val('');

//restores
$('option', '#reasonCode').html(allLI);

以下のコメントに記載されている別の方法。

var opt = $('select', '#reasonCode').clone(); // save the option
$('select', '#reasonCode').remove(); //remove it
$('#reasonCode').append(opt); // append it back
于 2013-06-06T18:58:47.380 に答える