日期:2014-05-17  浏览次数:20506 次

问一个DropDownList的问题
现在有一个DropDownList,数据是从数据库绑定的,在绑定的时候插入了一个默认项
DropDownList.Items.Insert(0, new ListItem("请选择", ""));
DropDownList的Value绑定的是htttp://www.xxx.com这种地址
在SelectedIndexChanged事件里获取Value的值,并打开对应的地址
if (this.DropDownList1.SelectedValue.ToString() != "")
  {
  string urlstr = this.DropDownList1.SelectedValue.ToString();
  Page.RegisterStartupScript("打开", "<script language=javascript>window.open('" + urlstr + "','_blank');</script>");
  }
问题是在页面我选择了一项打开对应的地址后,再刷新页面,会又打开一个我刚才选择项的地址,我在Page_Load里初始化
this.DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(zyljdlist1.Items.FindByText("请选择"));
this.DropDownList1.SelectedIndex = DropDownList1.Items.IndexOf(zyljdlist1.Items.FindByValue(""));
DropDownList1了也没用,哪位知道这是什么原因?

------解决方案--------------------
HTML code
    <form id="form1" runat="server">
    <div>
        <asp:DropDownList ID="DropDownList1" runat="server" 
            onselectedindexchanged="DropDownList1_SelectedIndexChanged" AutoPostBack="true">
            <asp:ListItem Text="请选择" Value=""></asp:ListItem>
            <asp:ListItem Text="博客园" Value="http://www.cnblogs.com"></asp:ListItem>
            <asp:ListItem Text="CSDN" Value="http://bbs.csdn.net/"></asp:ListItem>
        </asp:DropDownList>
    </div>
    </form>