在ASP.NET的下拉列表顶部显示高优先级项

时间:2017-01-23 05:07:58

标签: c# html asp.net

我在ASP.NET中有一个包含100个项目的下拉列表,其中用户选择其中两个项目的概率很高。所以,我想让这两个项目显示在顶部,如下所示,

Item 4
Item 6
......
Item 1
Item 2
Item 3
Item 4
Item 5
Item 6
Item 7
Item 8
Item 9
Item 10
.
.
.
Item 100

但是用户不应该选择......选项。如何在ASP.NET下拉列表中执行此操作?是否可以在不重复这些项目的情况下执行此操作?

1 个答案:

答案 0 :(得分:2)

一种方法可能是在从某个数据库填充下拉列表后添加一些最流行的静态项目(如果下拉列表从数据库填充)

像:

.
.
DropDownList1.DataBind();

DropDownList1.Items.Insert(0, new ListItem("item 4", "item 4"));

这将始终在下拉列表的顶部添加第4项。

修改

您可以在前端使用jQuery来执行此操作:

$( document ).ready(function() {

$('#MyList option[value="item4"]').insertBefore('#MyList option[value="item1"]');
    
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select id='MyList'>
  <option value='--select--'>--select--</option>
<option value='item1'>item1</option>
<option value='item2'>item2</option>
     <option value='item3'>item3</option>
  <option value='item4'>item4</option>
    </select>