当前位置:编程学习 > C#/ASP.NET >>

DropDownList 不可选的问题


DataTable dt = new DataTable();
dt = admin.Getdepartment();
if (dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    DropDownList1.Items.Insert(i, new ListItem(dt.Rows[i]["name"].ToString(), dt.Rows[i]["id"].ToString()));
                    DropDownList1.Items[i].Attributes.Add("disabled", "disabled");
                 
                }
            }

上面绑定的时候,把绑定的数据设置为不可选,也就是变灰。
当我按钮提交数据后,不可选的状态就没有了。如何解决这个问题! --------------------编程问答-------------------- 只能设置整个DropDownList不可用吧 --------------------编程问答--------------------  你把DropDownList的Enabled设为false就可以啦,如果某几项不可选,添加listItem.Attributes.Add("disabled", "true");试一下 --------------------编程问答-------------------- 我现在就是要设置下拉列表中的指定的几个项为不可选。按上面的方法实现了。
但是当我按钮提交事件,页面刷新后,不可选的状态就消失了 --------------------编程问答-------------------- 加载完成后

点击页面一个按钮后
--------------------编程问答-------------------- 谁能帮帮我! --------------------编程问答--------------------
引用 5 楼 wangxuebo 的回复:
谁能帮帮我!


 if (!IsPostBack)

用这个了么? --------------------编程问答--------------------
引用 6 楼 hou306010849 的回复:
Quote: 引用 5 楼 wangxuebo 的回复:

谁能帮帮我!


 if (!IsPostBack)

用这个了么?
用了 --------------------编程问答--------------------
引用 7 楼 wangxuebo 的回复:
Quote: 引用 6 楼 hou306010849 的回复:

Quote: 引用 5 楼 wangxuebo 的回复:

谁能帮帮我!


 if (!IsPostBack)

用这个了么?
用了


为true 绑定一次,false在绑定一次看看! --------------------编程问答-------------------- if (!Page.IsPostBack)
        {
            dt = admin.Getdepartment();

            int count = 0;
            if (dt.Rows.Count > 0)
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {

                    ddladmin.Items.Insert(count, new ListItem(dt.Rows[i]["dpname"].ToString(), i.ToString()));
                    ddladmin.Items[count].Attributes.Add("disabled", "true");

                 
                }
            }

        }

页面提交后,不可选的状态不能保持! --------------------编程问答-------------------- protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                DataTable dt = Getdepartment();
                int count = 0;
                if (dt.Rows.Count > 0)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        ddladmin.Items.Insert(count, new ListItem(dt.Rows[i]["dpname"].ToString(), i.ToString()));
                    }
                }
            }

            foreach (ListItem li in ddladmin.Items)
            {
                 li.Attributes.Add("disabled", "disabled");
            }
            
        } --------------------编程问答--------------------  if (!IsPostBack)页面只是第一次加载的时候执行里面的语句,当里点击后,页面就不会执行里面的语句,所以你的效果就没有了。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,