当前位置:  开发笔记 > 编程语言 > 正文

"DropDownList.SelectedIndex = -1"问题

如何解决《"DropDownList.SelectedIndex=-1"问题》经验,为你挑选了2个好方法。

我只想要一个没有选定项目的ASP.NET DropDownList.到目前为止,将SelectedIndex设置为-1无济于事.我正在使用带有AJAX的Framework 3.5,即此DropDownList位于UpdatePanel中.这是我在做的事情:

    protected void Page_Load (object sender, EventArgs e)
    {
        this.myDropDownList.SelectedIndex = -1;
        this.myDropDownList.ClearSelection();

        this.myDropDownList.Items.Add("Item1");
        this.myDropDownList.Items.Add("Item2");
    }

我在DropDown中添加一个元素的那一刻,它的SelectedIndex更改为0并且不能再设置为-1(我在添加项目后尝试调用SelectedIndex)...我做错了什么?蚂蚁帮助将不胜感激!



1> 小智..:

请记住,如果在执行DataSource/DataBind调用后调用它,myDropDownList.Items.Add将在底部添加一个新的Listitem元素,因此请使用myDropDownList.Items.Insert方法,例如...

myDropDownList.DataSource = DataAccess.GetDropDownItems(); // Psuedo Code
myDropDownList.DataTextField = "Value";
myDropDownList.DataValueField = "Id";
myDropDownList.DataBind();

myDropDownList.Items.Insert(0, new ListItem("Please select", ""));

将"请选择"下拉项添加到顶部.

并且如前所述,在下拉列表中始终只有一个项目被选中(我相信ListBoxes是不同的),如果没有明确选择,则默认为前一个.



2> Alexander Pr..:

可以使用客户端脚本将DropDownList的selectedIndex属性设置为-1(即清除选择):


小评论:使用jQuery 1.6或更新版本,$(elem).attr("selectedIndex")将不再起作用,因为selectedIndex是属性,而不是属性.请改用$(emel).prop("selectedIndex", - 1).
推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有