водяной знак для asp.net mvc3 textarea - PullRequest
0 голосов
/ 15 октября 2011

Я пытаюсь написать текст с водяными знаками в текстовом поле и текстовой области.Я могу успешно добавить водяной знак в текстовое поле.Но на textarea это не работает.Кто-нибудь видел подобные вещи раньше?Как решить это?

<%:Html.TextAreaFor(m => m.InvoiceDetails, new {Value="Invoice detailes",@class = "water", Title = "Invoice detailes" })%>

Это jquery для водяных знаков.Я нашел это где-то в сети. :)) 1004

<script type="text/javascript">
$(function () {

    $(".water").each(function () {
        $tb = $(this);
        if ($tb.val() != this.title) {
            $tb.removeClass("water");
        }
    });

    $(".water").focus(function () {
        $tb = $(this);
        if ($tb.val() == this.title) {
            $tb.val("");
            $tb.removeClass("water");
        }
    });

    $(".water").blur(function () {
        $tb = $(this);
        if ($.trim($tb.val()) == "") {
            $tb.val(this.title);
            $tb.addClass("water");
        }
    });
});       
1006

1 Ответ

0 голосов
/ 23 ноября 2011

Проблема в том, что ваша текстовая область не имеет атрибута title, который вы пытаетесь использовать в своем JavaScript.Он имеет атрибут Title, который явно не совпадает.Также не определен атрибут Value.Значение текстовой области должно быть установлено с помощью свойства InvoiceDetails в вашей модели представления.Итак, начните с исправления разметки:

<%: Html.TextAreaFor(
    m => m.InvoiceDetails, 
    new { 
        @class = "water", 
        title = "Invoice detailes" 
    }
) %>

Затем вы можете использовать код, указанный в этом ответе :

$('.water').addClass('watermark');
$('.watermark').live('focus', function() {
    var $tb = $(this);
    if ($tb.val() == this.title) {
        $tb.val('');
        $tb.removeClass('water');
    }
}).live('blur', function() {
    var $tb = $(this);
    if ($.trim($tb.val()) == '') {
        $tb.val(this.title);
        $tb.addClass('water');
    }
}).blur();

А вот живая демонстрация.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...