【问题标题】:Empty DropDownList on Page Load页面加载时为空 DropDownList
【发布时间】:2011-07-17 11:46:06
【问题描述】:

我有一个DropDownList,其中填充了来自WCF 网络服务的DataBinding 的项目。但是,每当我第一次启动页面时,列表中的第一项就会自动被选中,而我希望它完全空白。也许我可以通过在列表项的顶部添加一个空白项来轻松解决这个问题,但我不希望用户单击DropDownList 后显示此空白项。我可以通过任何简单的方式完成此操作吗?

【问题讨论】:

  • 当用户选择其他项目时,你想删除空项目吗?

标签: asp.net wcf data-binding drop-down-menu


【解决方案1】:

这是我的工作:

        using (Entities db = new Entities())
        {
            ddlRelationships.DataSource = (from q in db.RelationshipTypes where (q.Active == true) orderby q.Description select q);
            ddlRelationships.DataValueField = "Code";
            ddlRelationships.DataTextField = "Description";
            ddlRelationships.DataBind();

            ddlRelationships.Items.Insert(0, "--Please Make Selection--");
            ddlRelationships.Items[0].Value = "0";
        }

注意,在我将数据绑定到 ddL 之后,我会在位置“0”处手动插入一个新项目。你应该能够很容易地适应你的情况。稍后在我的验证器中,如果/当我想强制用户选择时,我会检查是否选择了“0”以外的其他内容。

【讨论】:

  • 这不是他想要的,他已经完成了,但现在他需要删除该项目,一旦用户选择不同的选项。
【解决方案2】:
DDL.InsertAt(0, new Item('','0'));
DDL.Attributes["onclick"] = "if(this[0].value=='0') this.remove(0);";

【讨论】:

    【解决方案3】:

    【讨论】:

      【解决方案4】:
      if (!IsPostBack)
              {
                  ddl_type.Items.Add(new ListItem("", "0"));
                  ddl_type.Items.Add(new ListItem("Item 1", "1"));
                  ddl_type.Items.Add(new ListItem("Item 2", "2"));
                  ddl_type.Items.Add(new ListItem("Item 3", "3"));
                  ddl_type.Items.Add(new ListItem("Item 4", "4"));
                  ddl_type.Attributes.Add("onclick", "manageType('" + ddl_type.ClientID + "');");
      }
      
      <script type="text/javascript">
              function manageType(pType) {
                  var list = document.getElementById(pType);
                  if(list[0].value == '0') // the value of the removed value
                      list.remove(0);
              }
          </script>
      

      【讨论】:

        猜你喜欢
        • 2021-09-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-08-08
        • 2020-05-25
        • 1970-01-01
        • 2015-08-28
        相关资源
        最近更新 更多