当前位置: 首页 > 图文教程 > 开发语言 > Delphi > 排序Select中Option项的一个示例

Delphi
Delphi设计简易对象垃圾回收框架
Delphi开发Web应用程序打印组件
Delphi客户服务器应用开发(四)
Delphi自定义部件开发(一)
Delphi自定义部件开发(二)
Delphi自定义部件开发(三)
Delphi自定义部件开发(四)
开发Delphi对象式数据管理功能(一)
开发Delphi对象式数据管理功能(二)
开发Delphi对象式数据管理功能(三)
开发Delphi对象式数据管理功能(四)
开发Delphi对象式数据管理功能(五)
用Delphi语言来学设计模式之简单工厂篇
Delphi2005和DUnit搭建敏捷开发平台记录
你想成Delphi高手吗?快来学Delphi快捷键
Borland最新版开发工具Delphi2005抢先预览
用Delphi实现JPEG格式图像的显示
用DELPHI编程访问SQL SERVER数据库
用Delphi编制趣味动画鼠标
用Delphi实现选单的自动隐藏功能

Delphi 中的 排序Select中Option项的一个示例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 66 ::
收藏到网摘: n/a

 
Form中的Select控件不支持对选择项(Option)的排序,下面我将对Option中value属性值进行排序,并调整每个Option排序后的位置,具体代码如下(这里假设每个Option中的value与其中的text内容相同):

  该函数运用了Array(数组)对象的排序(sort)方法,实现了Select排序。



function sortMe(oSel){
var ln = oSel.options.length;
var arr = new Array(); // 这是关键部分

// 将select中的所有option的value值将保存在Array中
for (var i = 0; i < ln; i++)
{

  // 如果需要对option中的文本排序,可以改为arr[i] = oSel.options[i].text;
  arr[i] = oSel.options[i].value;

}

arr.sort(); // 开始排序

// 清空Select中全部Option

while (ln--)
{
  oSel.options[ln] = null;
}

// 将排序后的数组重新添加到Select中

for (i = 0; i < arr.length; i++)
{
  oSel.add (new Option(arr[i], arr[i]));
}
}
</script>