这是场景。我有一个填充项目的下拉列表。下拉列表项包含产品 ID 作为值。现在需要使用 rangevalidator 验证要填写在文本框中的数量,其中最大值将根据所选项目的产品 ID 从数据库中获取。(我已经有一个存储的过程来提供相应产品 ID 的最大数量)。如何设置数量范围验证器的最大值。我还使用 jquery 插件来设计下拉菜单,并使用客户端脚本根据产品 ID 显示价格,因为 selectindexchanged 没有被触发。任何人都会对这个问题有所了解。
问问题
1773 次
2 回答
1
要在 Javascript 中更改验证器的最大值,请使用:
var rvalid = document.getElementById('<%= RangeValidator1.ClientID %>');
rvalid.maximumvalue = 10;
为了从存储过程中获得最大数量,有很多解决方案。您可以进行 Ajax 调用,也可以在页面呈现时立即存储所有值。
你是如何根据ID得到价格值的?也许您应该在这里遵循类似的方法。
于 2013-04-17T08:49:33.527 回答
0
请改用 CustomValidator。将 SP 的结果设置为 Javascript 变量并在 ClientValidate 函数中使用它。
像这样的东西:
<script language="JavaScript">
function CheckQuantity(sender, args)
{
if ($('#ddl').val()>maxQty)
args.IsValid = false;
else
args.IsValid = true;
}
</script>
<asp:CustomValidator
ControlToValidate="ddl"
OnServerValidate="CheckQuantity"
Text="Invalid quantity"
runat="server"/>
于 2013-04-17T08:18:56.167 回答