使用tooltip显示jquery.validate.unobtrusive验证信息

Posted 绿皮儿橘子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用tooltip显示jquery.validate.unobtrusive验证信息相关的知识,希望对你有一定的参考价值。

通过重写CSS实现使用tooltip显示jquery.validate.unobtrusive验证信息,效果如图:

 

1. 在ViewModel中定义验证规则

[Display(Name = "纬度")]
[Required(ErrorMessage = "{0}不能为空")]
[RegularExpression(@"^\\-?\\d+(\\.\\d+)?$", ErrorMessage = "{0}格式不正确,请输入数值")]
[Range(-90, 90, ErrorMessage = "{0}应在{1}到{2}之间")]
public decimal Latitude { get; set; }

2. 在页面中添加ValidationMessage

<div class="form-group">
    @html.LabelFor(x => x.Latitude, new { @class = "col-sm-2 control-label" })
    <div class="col-sm-10">
        @Html.TextBoxFor(x => x.Latitude, new { @class = "form-control" })
        @Html.ValidationMessageFor(x => x.Latitude)
    </div>
</div>

3. 预览页面,查看生成的HTML

有错误信息时,html为

4. 重写CSS

这里 .field-validation-error 的父级为bootstrap的.col-sm-10,已有“posttion: relative;”的样式

.field-validation-valid > span,
.field-validation-error > span {
    position: absolute;
    bottom: -25px;
    padding: 3px 12px;
    background: #f03040;
    color: white;
    font-size: 12px;
    box-shadow: #999 3px 3px 3px;
    z-index: 1;
}

.field-validation-valid > span:before,
.field-validation-error > span:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: -5px;
    left: 12px;
    border-top: 0;
    border-right: 5px solid transparent;
    border-bottom: 5px solid #f03040;
    border-left: 5px solid transparent;
}

  

 

以上是关于使用tooltip显示jquery.validate.unobtrusive验证信息的主要内容,如果未能解决你的问题,请参考以下文章

QAbstractItemView为截断的项显示ToolTip(使用事件过滤)

vue element el-tooltip 不显示

每次显示前如何更新 ToolTip 文本?

Qt QAction ToolTip显示问题,禁止toolbar上默认显示的tooltip

请问highcharts怎样点击外部按钮让所有tooltip都显示?

echarts折线图,为啥加了tooltip,导致提示线消失