mvc3 DataAnnotations有一个Description属性:
e.g。
[Display (Name="Title", Description="description about the title")]
public string Title { set; get};
在我看来,我想在.blur上使用jquery显示输入的Description文本。
<script type="text/javascript">
$(function () {
$("#title").blur(function () {
???
});
});
@Html.LabelFor(model => model.Title)
//description here, not sure how to map it.
@Html.LabelFor()//description would go here
@Html.TextBoxFor(model => model.Title)
@Html.ValidationMessageFor(model => model.Title)
THX!
答案 0 :(得分:1)
我以前从未使用过描述,但假设它添加了一个标题标签,那么你可以使用它:
var desc = $(this).attr("title");
alert(desc);
答案 1 :(得分:1)
我不认为添加说明会为您的输入元素添加标题标记。您可能想要在创建像这样的文本框时提及
@Html.TextBoxFor(model => model.Title, new {@title="Your description"})
将为您的input元素生成一个title标记,并且如上所述,您可以使用jQuery来访问它。
$(function () {
$("#Title").blur(function () {
alert($(this).attr("title"));
});
});
您可能希望使用通用选择器而不是特定选择器(ID),类似于所有这些输入元素的类名
编辑:基于有关通用选择器和特定选择器的评论
每个元素的ID都应该是唯一的,所以如果你有8个元素,那么元素就会(并且应该)有8个唯一的id。在这种情况下,您需要按照ID
将您的函数绑定到8个不同的项目 $("#Title,#Name,#City,#JobTitle,#SomeOther,#LastName,#Hi,#Ho").blur(function () {
alert($(this).attr("title"));
});
但是如果你有一个应用于所有这些元素的公共类,你可以像这样使用它(下面将函数绑定到所有具有css类值mySimpleClass
$(".mySimpleClass").blur(function () {
alert($(this).attr("title"));
});
您可以使用其他选择器,如子选择器。 (下面的代码将您的功能绑定到divContainer
div
$("#divcontainer input type[text]").blur(function () {
alert($(this).attr("title"));
});
要在使用Html.TextBox for HTML helper时将Css类添加到输入元素,您可以像这样使用它
@Html.TextBoxFor(model => model.Title, new {@title="Your description", @class="mySimpleClass"})