我为数据创建了一个重复多次的输入模板。现在我想确保至少填写其中一个项目。
我这样做的方法是使用通用列表List中的Count属性来查看使用了多少个(我的控件中有一些逻辑允许我只选择实际使用的条目)。
我是否可以通过任何方式向页面的验证页面添加内容,以通知用户至少需要填写一个itme。 我想在后面的代码中进行计数检查...
if (EnteredClasses.Count > 0)
{
//do stuff here
}
else
{
//show validation error
}
答案 0 :(得分:2)
我会使用CustomValidator控件,内联ServerValidate函数并检查Page.IsValid。如果ServerValidate函数将args.IsValid设置为false,那么您的CustomValidator控件的错误消息将显示在验证摘要中。
安德鲁
答案 1 :(得分:0)
使用CustomValidator。使用这些时,您可以编写自己喜欢的任何逻辑。
答案 2 :(得分:0)
我会欺骗并合并两种方法。根据您的问题,您似乎需要使用验证摘要,因此您需要基本的asp验证。然后,您需要使用自定义验证器。
自定义验证器的问题是,您必须将其附加到特定控件,然后实现javascrip方法
function ClientValidate(source, agruments)
{
// Do your check here where source is the span for the validator and
// argument is an object with .value the value of the control to which
// the validator is attached and .isvalid that indicate if the validation
// checks out (that's what you set to true or false)
}
如果要验证多个项目而不是juste,则会出现问题。所以我会实现这个方法并忽略arguments.value然后使用jQuery检查你的整个表单并做你需要的任何验证然后设置isvalid。