0

簡単なスクリプトを登録しようとしています-

ClientScript.RegisterClientScriptBlock(typeof(Page), "myscript", "<script>testfun();</script>");

この行は、ページ読み込みイベントに入れると正常に機能します。ただし、ユーザーがグリッドビューで行を選択するたびに、実行するためにクライアント側の関数が必要になるため、GridView.SelectedIndexChangedイベントで同じ行を追加しましたが、そこでは機能しません。誰かがこれが起こる理由を指摘したり、よりエレガントな解決策に私を向けたりできますか?

4

1 に答える 1

2

RegisterClientScriptBlockスクリプトを実行せず、ページに出力するだけで、クライアントに送信されます。*.jsこれは、ファイルを持つこととプログラム的に同等です。スクリプトは、結果のHTMLページがクライアントにロードされたときにのみ実行されます。javascript特定のコントロールのイベントでJavaスクリプトを実行する場合は、次のようにメソッドを接続する必要があります。

onclick="javascript_method();"

これを機能させるには、ファイルjavascript_method()で定義するか、を介してページに追加する必要があります*.jsRegisterClientScriptBlock

于 2012-05-14T19:46:04.887 に答える