0

请参阅下面的代码。我想按名称而不是 id 对选项标签进行排序。

这是我的代码:

<?php

$string = '<option id=a1>Sinead Shannon Roche<option id=a2>Emile Abossolo Mbo<option id=a3>Youssouf Djaoro<option id=a4>Dioucounda Koma';
$new_string = '';

$s = explode('<', $string);
asort($s);
foreach($s AS $v) {
    $new_string = $new_string . '<' . $v;
}

// I want $new_string to be "<option id=a4>Dioucounda Koma<option id=a2>Emile Abossolo Mbo<option id=a1>Sinead Shannon Roche<option id=a3>Youssouf Djaoro"

?>
4

1 回答 1

1

我自己会为此使用 JQuery...

如果你有兴趣这里的代码。

声明一个全局函数

$.fn.sortSelect = function() {
    var op = this.children("option");
    op.sort(function(a, b) {
        return a.text > b.text ? 1 : -1;
    })
    return this.empty().append(op);
}

并从代码中调用该函数。

$("#my_select").sortSelect();
于 2012-07-16T17:58:19.057 回答