Динамически изменять текст AJAX WaterMark - PullRequest
0 голосов
/ 19 апреля 2011

На моей странице есть TextBox, к которому подключен AJAX TextBoxWaterMarkExtender.Мне нужно изменить текст водяного знака в зависимости от выбора в другом разделе страницы (что вызывает частичный постбэк страницы).Вот код, который у меня есть до сих пор:

    if (myConditionIsTrue)
    {
        lblShipToHeader.InnerText = string.Format("{0} Name:", AnimalTypeName);
        wmAccountName.WatermarkText = string.Format("New {0}", AnimalTypeName);
    }
    else
    {
        lblShipToHeader.InnerText = "Ship To:";
        wmAccountName.WatermarkText = "New";
    }

К сожалению, это не похоже на работу.При начальной загрузке страницы myCondition будет ложным;установка WaterMarkText на «Новый».Однако после того, как я сделаю выбор, текст водяного знака не изменится.

Обновляется раздел страницы, на котором он живет, и я вижу изменения в lblShipToHeader.

Любые предложения о том, как я могу заставить это работать?

1 Ответ

0 голосов
/ 19 апреля 2011

ОК, так что, может быть, я должен немного больше отладить, прежде чем отправлять сообщения, но я нашел ответ.

Когда страница отправляется обратно, для моего свойства TextBox.Text устанавливается текст водяного знака. Итак, поскольку TextBox.Text не является нулевым или пустым; водяной знак не отображается.

Просто добавьте это прямо перед тем, как фрагмент кода, размещенный выше, решит проблему:

    if (txtAccountName.Text == wmAccountName.WatermarkText)
        txtAccountName.Text = string.Empty;
...