如何在ASP.Net MVC中的文本框中显示水印而不是值?

Lak*_*hae 3 asp.net-mvc-4

在我看来,我有

<%= Html.TextBoxFor(m => m.Patient.Weight, new { title = "Weight" , style = "width: 3em", @class = "fieldRequired watermark" }) %> pounds</div>
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,我得到了 在此输入图像描述在我的文本框中.当我从文本框中删除值时,它将显示水印.那么,我该如何制作在此输入图像描述

Len*_*ncy 8

您正在寻找的术语是占位符.

HTML 5有一个选项来指定占位符.

<input name="name" type="text" placeholder="Your name...">
@Html.TextBoxFor(m => m.Name, new { placeholder="Your Name..." })
Run Code Online (Sandbox Code Playgroud)

但是,并非所有浏览器都支持它.所以你要去JavaScript领域.

这是NuGet上流行的选项 - jQuery.placeholder. 它将读取HTML 5属性并处理不支持它的浏览器的后备.

只需在文档onload中添加脚本即可.还有一些css课程,请查看他们的文档以获取更多信息.

$('input, textarea').placeholder();
Run Code Online (Sandbox Code Playgroud)

编辑: 所有主要的现代浏览器都支持占位符