动态改变AJAX水印文本

本文关键字:文本 AJAX 改变 动态 | 更新日期: 2023-09-27 17:50:40

我有一个文本框在我的页面上,有一个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将为false;将WaterMarkText设置为"New"。但是,一旦我做了一个选择,水印文本不会改变。

这个页面的部分正在更新,因为我可以看到lblShipToHeader的变化。

有什么建议我怎么才能得到这个工作吗?

动态改变AJAX水印文本

好的,所以也许我应该在我发布之前多调试一点,但我找到了答案。

当页面返回时,我的TextBox。"文本"属性设置为水印文本。既然文本框。文本不为空或空;未显示水印

只需在上面发布的代码片段之前添加此代码即可解决问题:

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