0

UserControl から継承するクラス BaseControl から継承するいくつかのユーザー コントロールを作成しています。BaseControl には、必要な「もの」が含まれます。それらの 1 つは ControlValue と呼ばれる文字列プロパティです。JavaScript からアクセスする方法が必要です。RegisterExpandoAttribute() について少し読んでいますが、プロパティがいつでも値を変更できるため、それを機能させる方法やどこに置くべきかわかりません。非表示のフィールドは避けたいと思います。

どんな助けでも大歓迎です。

4

1 に答える 1

1

これを行う最善の方法は、多くのことに依存します。カスタム コントロールが作成している HTML の種類など。

ただし、最も一般的な方法 (すべての場合に機能する方法) は、グローバル値を設定する JavaScript を登録することです。

このようなものが動作するはずです:

// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;

cs.RegisterStartupScript(this.GetType(), "setupglobal", 
  "<script type=text/javascript>var hiImAGlobal = 'sam'; </script>");

これが最善の方法だと言っているのではなく、うまくいく方法であることを覚えておいてください。

MSDN ドキュメントは次のとおりです 。 http://msdn.microsoft.com/en-us/library/asz8zsxy

于 2012-07-06T20:54:17.867 に答える