关于ASP.NET控件DropDownList控件的问题
大家都知道DropDownList的两个重要的属性吧:
SelectedIndex
SelectedValue
通常我们在页面的postback时,读取这两个属性,对用户的选择做出处理。
ASP.NET封装了这两个属性,但是我发现了一个问题:就是在有的时候,SelectedIndex不能返回我们期待的结果!
DropDownList的Items包括ListItem对象,ListItem有Value和Text两个属性,很多时候两者是不同的,
例如,某个DropDownList包含以下选项:
当用户选择苹果时,在Postback时,SelectedValue的值是:0,SelectedIndex的值是:0
当用户选择葡萄时,在Postback时,SelectedValue的值是:0,SelectedIndex的值是:还是0!而不是5!
我不知道这是不是算作bug,可能是ASP.NET通过SelectedValue的值来“计算”出SelectedIndex的值,而不是DropDownList真正选中的值。
所以,尽量避免在DropDownList包括相同Value的项,小心处理,避免出错。
SelectedIndex
SelectedValue
通常我们在页面的postback时,读取这两个属性,对用户的选择做出处理。
ASP.NET封装了这两个属性,但是我发现了一个问题:就是在有的时候,SelectedIndex不能返回我们期待的结果!
DropDownList的Items包括ListItem对象,ListItem有Value和Text两个属性,很多时候两者是不同的,
例如,某个DropDownList包含以下选项:
Value | Text |
0 | 苹果 |
1 | 鸭梨 |
2 | 香蕉 |
3 | 草莓 |
4 | 柑橘 |
0 | 葡萄 |
1 | 木瓜 |
当用户选择苹果时,在Postback时,SelectedValue的值是:0,SelectedIndex的值是:0
当用户选择葡萄时,在Postback时,SelectedValue的值是:0,SelectedIndex的值是:还是0!而不是5!
我不知道这是不是算作bug,可能是ASP.NET通过SelectedValue的值来“计算”出SelectedIndex的值,而不是DropDownList真正选中的值。
所以,尽量避免在DropDownList包括相同Value的项,小心处理,避免出错。
>>>>> 版权没有 >>>>> 欢迎转载 >>>>> 原文地址 >>>>> http://www.cnblogs.com/jlzhou >>>>> 雄鹰在鸡窝里长大,就会失去飞翔的本领,野狼在羊群里成长,也会爱上羊而丧失狼性。人生的奥妙就在于与人相处。生活的美好则在于送人玫瑰。和聪明的人在一起,你才会更加睿智。和优秀的人在一起,你才会出类拔萃。所以,你是谁并不重要,重要的是,你和谁在一起。
分类:
原创
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?