1

我正在做必填字段验证检查,首先我将“选择一个项目”硬编码到我的ddllocation,但是当我点击提交按钮时,系统不会提示我必填字段消息。我错过了什么吗?

代码背后

  ddlLocation.DataSource = dsResult.Tables[0];
  ddlLocation.DataTextField = "location_nm";
  ddlLocation.DataValueField = "location_id";
  ddlLocation.DataBind();
  ddlLocation.Items.Insert(0, "----Select an Item----");

HTML

<asp:RequiredFieldValidator ID="rfvLocation" runat="server" 
ControlToValidate="ddlLocation"Display="Dynamic" CssClass="ErrorMsg"
ErrorMessage="Mandatory" InitialValue="1"></asp:RequiredFieldValidator>
4

3 回答 3

4

你应该设置 InitialValue

InitialValue = "----Select an Item----"
于 2013-04-12T03:38:02.103 回答
1

改变

 ddlLocation.Items.Insert(0, "----Select an Item----");

ddlLocation.Items.Insert(0, new ListItem("----Select an Item----", "1"));

因为你给的初始值为RequiredFieldValidator1

您可以提供不会在您绑定到下拉列表的数据中的初始值

如果您在不创建列表项的情况下插入项目,则该项目的值字段将为空值。那么你不能给初始值字段赋值RequiredFieldValidator

于 2013-04-12T03:57:08.563 回答
0

首先你应该通过这种方式在列表中插入项目

ddlLocation.Items.Insert(0, new ListItem("-select item-","0" ));

RequiredFieldValidator 然后你可以像这样设置初始值

InitialValue = "0"

0 是首选,因为 1 可以是 中任何其他位置的 id dropdown

于 2013-04-12T03:55:02.153 回答