我有一个转发器,它显示数据库表中的键值对。表中的某些字段具有最小/最大限制。如何向转发器添加范围验证器,并能够为不同的字段使用不同的范围?
例如,某些表字段为:
空闲时间:20(最小10,最多40)
取件时间:60(最少3,最多90)
当显示页面时,它显示“空闲时间”(标签)和文本框中的20,嵌套行是“拾取时间”(标签),文本框中是60。我需要阻止用户在空闲时间输入80或5,但80或5对Pcikup时间有效。
<ItemTemplate>
<tr>
<td style="vertical-align:top" class="BoldSmall">
<asp:Label runat="server" ID="lblName" Text='<%# Eval("GLOBALCONFIGNAME")%>' />
</td>
<td style="vertical-align:top" class="BoldSmall">
<asp:TextBox runat="server" ID="tbValue" CssClass="NormalSmall" Text='<%# Eval("GLOBALCONFIGVALUE")%>' Width="140" />
</td>
</tr>
</ItemTemplate>
对于文本框“tbValue”我需要添加范围验证器,但范围会根据我在转发器中显示的表的哪一行而改变。
(例如,转发器的第一项具有“空闲时间”作为globalconfigname,20作为globalconfigvalue;下一项具有“Pickup Time”作为globalconfigname,60作为globalconfigvalue,...)
感谢。
答案 0 :(得分:1)
在RangeValidator控件上数据绑定到MinimumValue和MaximumValue。
<asp:RangeValidator ControlToValidate="tbValue" MinimumValue='<%# Eval("MinValue") %>' MaximumValue='<%# Eval("MaxValue") %>' Type="Integer" Text="The value is not within the acceptable range!" runat="server" />