【问题标题】:ASP.NET MVC Data Annotation TooltipASP.NET MVC 数据注释工具提示
【发布时间】:2011-02-06 04:35:46
【问题描述】:

当表单验证失败时,我被要求显示工具提示而不是纯文本。我们目前正在使用 asp.net MVC 3 数据注释验证器来显示验证错误消息。我对 MVC 还是很陌生,我花了几个小时在网上寻找一个干净的解决方案。如果有人能指出我正确的方向,我将不胜感激。

谢谢

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-3 data-annotations


    【解决方案1】:

    您可以指定要应用于控件的 html 属性。这是使用创建控件的 HtmlHelper 方法的第二个参数来完成的。例如,在 MVC 3 中,如果您想要一个带有工具提示的文本框,当您将鼠标悬停在它上面时,请使用像这样的 html 标题属性。

    @Html.TextBoxFor(model => model.Name, new { @class = "form", @title= "Your name as you would like it to appear in the notification email" })
    

    要在服务器端代码中使用来自控制器的值,您可以使用 ViewBag(或 MVC2 中的 ViewData)。所以代码看起来像这样:

    [HttpPost]
    public void Form(Model m)
    {
        if(m.Name.Length==0)
            ViewBag.NameError = "Please enter your name";
    }
    

    视图代码如下所示

    @Html.TextBoxFor(model => model.Name, new { @class = "form", @title= (ViewBag.NameError==null?string.empty:(string)ViewBag.NameError)})
    

    【讨论】:

      【解决方案2】:

      您已经成功了,因为您已经在页面上显示了验证错误。您需要了解的是如何使用一些客户端脚本 (javascript) 来将这些脚本呈现为浏览器中的工具提示。

      看看下面的 JQuery 插件,它们可能是你所追求的: http://jquery.bassistance.de/tooltip/demo/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-04-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-06
        • 1970-01-01
        • 1970-01-01
        • 2020-07-07
        相关资源
        最近更新 更多