asp.net mvc 验证数据格式问题

gdmvip 2011-10-19 04:29:29
刚刚网上下载了一个MVC的例子来学习,遇到很多问题想问问大家 全身家就只有20分了

看我发的代码注释的问题。



[Required(ErrorMessage = "请输入学员名称!")]
[DisplayName("学员名称")]
[StringLength(6, ErrorMessage = "学员名称长度不能超过6个字符!")] //怎么写验证最少输入字符数量呢?
public string Name { get; set; }

[DisplayName("学员年龄")]
[Required(ErrorMessage = "请输入学员的年龄!")] //怎么写只能输入数字?
public int Age { get; set; }

[Required(ErrorMessage = "请输入学员地址!")]
[StringLength(30, ErrorMessage = "学员名称长度不能超过6个字符!")]
[DisplayName("学员地址")]
public string Addess { get; set; }

[Required(ErrorMessage = "请输入邮箱")] //怎么写邮箱格式验证?
[DisplayName("电子邮箱")]
public int Cid { get; set; }

[Required(ErrorMessage = "请输入电话号码")] //怎么写电话验证呢?手机的和固话的
[DisplayName("电话号码")]
public int Cid { get; set; }




...全文
285 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
大雷神 2011-11-09
  • 打赏
  • 举报
回复
三楼正解 还有一种方法 <input type="text" id="tEmail" name="tEmail" value="jeffrey @mail.com"
data-val="true" data-val-email="必須為Email"/>
<span data-valmsg-for="tEmail"></span> 这种也可以
quifar123 2011-10-19
  • 打赏
  • 举报
回复
楼上...
  • 打赏
  • 举报
回复
你上面说的都可以用正则来完成,比如只能输入数字?
加上
[RegularExpression(@"^\d+$", ErrorMessage = "只能输入数字!")]

[RegularExpression(@"^.{3,6}$", ErrorMessage = "必须输入3-6个字符!")]


邮箱和手机的正则网上一搜就有
  • 打赏
  • 举报
回复
脚本验证是最好的,//校验是否为空
function isNull(s)
{
var patrn=/^\s*$/;
if(!patrn.exec(s)) return false;
return true;
}
//校验是否全由数字组成
function isDigit(s)
{
var patrn=/^[0-9]{1,20}$/;
if(!patrn.exec(s)) return false;
return true;
}
//校验是否全金额
function isMoney(s)
{
var patrn=/^(-?\d+)(\.\d{1,2})?$/;
if(!patrn.exec(s)) return false;
return true;
}

//校验是否日期格式
function isDate(s)
{
var r = s.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(r==null)return false;
var d = new Date(r[1], r[3]-1, r[4]);
return(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}

//去掉首尾空格
function Trim(str)
{
return str.replace(/(^\s*)|(\s*$)/g,"");
}
大雷神 2011-10-19
  • 打赏
  • 举报
回复
帮顶
其实有种方法 可以解决在后台写 例如判读用户名是否已经存在 if (检查数据行数>0) { 执行
}else{ ModelState.AddModelError("验证用户名", "用户名已经存在");} 类似这种 可以对接受过来的数据进行匹配 直接在控制器里面写接收的参数就可以了

62,039

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧