6

<option>その中の要素を再ソート/並べ替える方法について何か提案はあり<select>ますか? html は次のとおりです。

<select class="required" name="jform[params][language]" id="jform_params_language">
    <option value="cs-CZ">Czech (Cestina)</option>
    <option value="en-GB">English (United Kingdom)</option>
    <option value="sk-SK">Slovak (Slovencina)</option>
</select>

このようにする必要があります:

<select class="required" name="jform[params][language]" id="jform_params_language">
    <option value="sk-SK">Slovak (Slovencina)</option>
    <option value="en-GB">English (United Kingdom)</option>
    <option value="cs-CZ">Czech (Cestina)</option>
</select>

私はhtmlを変更できないことに言及する必要があります。jQueryのsort()機能を使ってみたのですが、やり方がわかりません。

4

2 に答える 2

9

メソッドを使用できますreverse

var $sel = $('#jform_params_language'),
    $o = $sel.children().toArray().reverse();

$sel.append($o); //[0].selectedIndex = 0;

http://jsfiddle.net/3UWx6/

于 2013-04-14T00:09:40.420 に答える
5

たとえば、3 番目のオプションを 1 番目のオプションの前に移動するには、以下の jquery を使用できます。

$('select[name="NameOfDropDown"] option:eq(2)').insertBefore($('select[name="NameOfDropDown"] option:eq(0)'));
于 2013-07-21T07:59:48.087 に答える