Jquery 对表行中的下拉列表进行排序
Jquery to sort drop down list in a table row
如何对下面的下拉列表进行排序?我需要按名称对其进行排序,并删除某些选项,例如以"S"开头的选项。
<table>
<tr>
<td class="bold"><a href="/admin/programs/" target="_top">Program Link</a></td>
<td>
<select name="ProgramLink">
<option value="0">None Selected</option>
<option value="2985">Cluster</option>
<option value="2986">Seminar</option>
<option value="2991">Services</option>
<option value="2982">Biliteracy</option>
<option value="2983">Learner MEC</option>
<option value="2987">Day Class</option>
</select>
</td>
</tr>
</table>
我认为这段代码加上将order
类添加到您的选择中可能会有所帮助:
$('select.order').each(function() {
var options = [];
$(this).find('option').each(function() {
if ($(this).text().indexOf('S') != 0) {
options.push({value: $(this).val(), label: $(this).text()});
};
})
if (options.length > 0) {
options = options.sort(function(a, b) {
var x = a['label']; var y = b['label'];
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
});
var options_html = '';
$.each(options, function(i, option) {
options_html += '<option value="'+option.value+'">'+option.label+'</option>';
});
$(this).html(options_html);
};
})
注意:您的 html 代码缺少</select>
;)
var options = $('select option');
options.detach().sort(function(a,b) {
var at = $(a).text();
var bt = $(b).text();
return (at > bt)?1:((at < bt)?-1:0);
});
options.appendTo('select');
相关文章:
- 使用选项组对下拉列表进行排序
- 如何在角度js的自动完成下拉列表中对项目列表(按字母顺序)进行排序
- 选择下拉列表时,按角度中的多个字段排序
- 对添加的 atrribute 或 id 的下拉列表进行排序
- Jquery 对表行中的下拉列表进行排序
- 如何在 angularjs 中对下拉列表进行排序
- yii 使用下拉列表对 CListView 进行排序
- 使用下拉列表选择对列表.js中的项目进行排序
- 排序下拉列表
- 如何使用下拉列表根据DateTransaction对其进行排序?
- 如何显示带有排序的下拉列表的页面
- 根据下拉列表的内容进行排序
- 为什么这个下拉列表的排序工作在Internet Explorer,而不是在Chrome
- 用javascript排序下拉列表
- 另一种排序JSON文件的方法,或者至少是使用javascript的下拉列表
- 将下拉列表与可单击的排序列表相结合
- 按字母顺序排序php/html表单中的下拉列表值
- 在javascript中按值而不是文本对选择下拉列表进行排序
- 排序语言的下拉列表为本地化Chrome扩展
- 如何从客户端(Javascript)重新排序下拉列表控件,如NetFlix队列