2

我正在 MVC3 ASP.NET 应用程序中尝试 jQuery,但我在模型方面苦苦挣扎。

这不起作用:

我已经声明了一个 TextBox Watermark 库:

<script src="../../Scripts/jquery.tinywatermark-3.1.0.js" type="text/javascript"></script>

然后我添加我的 jQuery:

<script type="text/javascript">
    $(function () {
        $('.watermarked').watermark('watermark', 'Please Enter...');
    });
</script>

然后将带水印的类添加到我的 div 模型字段中:

<div class="editor-field">
     @Html.EditorFor(model => model.SchemeName, new { @class = "watermarked" }) 
    @*<input class="watermarked"  @Html.EditorFor(model => model.SchemeName) />*@
    @Html.ValidationMessageFor(model => model.SchemeName)

如果我取消注释该部分它有点工作但我想维护 Razor 模型,有什么想法,有人吗?

4

2 回答 2

3

以下行:

@Html.EditorFor(model => model.SchemeName, new { @class = "watermarked" })

不做你认为它做的事。您传递给EditorFor助手的第二个参数并没有按照您的想法执行。它将附加视图数据发送到自定义编辑器模板。它不会应用您可能想的任何 html 属性。如果您希望此语法正常工作,您可以编写自定义元数据提供程序和自定义编辑器模板,如下文所示。

于 2012-05-14T21:13:39.803 回答
1

我不确定EditorFor()您需要它的偏好是什么,但这应该可以正常工作

@Html.TextBoxFor(model => model.SchemeName, new { @class = "watermarked" })
于 2012-05-15T00:45:51.930 回答