1

私は知っています、「AjaxToolKitを使用しないでください」...しかし、私はそれで立ち往生していると仮定します。

私が以下を持っている場合:

<asp:TextBox runat="server" ID="textBox" />
<asp:TextBoxWatermarkExtender runat="server
    TargetControlID="textBox"
    WatermarkText="Text" />

var textBoxSelector = $(#'<%= textBox.ClientID %>');

次に、これは機能しません (つまり、透かしテキストは変更されますが、目的のテキストは変更されません)。

textBoxSelector.val('example text');

ただし、これはChromeで行うことがわかりました:

textBoxSelector.focus();
textBoxSelector.val('example text');

しかし、Internet Explorer にはありません。

これを実装する方法はありますか?

4

1 に答える 1

2

透かしエクステンダー自体のビヘイビア ID を設定して使用する必要があります。

<asp:TextBox runat="server" ID="textBox" />
<asp:TextBoxWatermarkExtender runat="server
    TargetControlID="textBox" BehaviorID="textboxWaterMark"
    WatermarkText="Text" />

次に、 を使用$find()してオブジェクトにアクセスし、set_Text()

var textboxWaterMark = $find("textboxWaterMark");
textboxWaterMark.set_Text('example text'); 

が null を返す場合$find()、ページが読み込まれるまで待つ必要がある場合があります。jQueryではなくツールキットを使用

Sys.Application.add_load(MyFunction);
function MyFunction() {
    var textboxWaterMark = $find("textboxWaterMark");
    textboxWaterMark.set_Text('example text');
}
于 2013-08-07T12:40:35.663 に答える