2

魔女が<asp:DropDownList>静的リスト項目でいっぱいになります。

<asp:DropDownList ... OnDataBound="handlerMethod">
    <asp:ListItem Value="..." Text="..." />
    <asp:ListItem Value="..." Text="..." />
    <asp:ListItem Value="..." Text="..." />
</asp:DropDownList>

問題はOnDataBound、リストがいっぱいになったときにイベントがトリガーされないことです。ドロップダウンにあるリスト項目から他のデータを入力するためにトリガーする必要があります。

ドキュメントには次のように記載されています。

このメソッドは、コントロールに関連付けられたデータ バインディング ロジックが完了したことをサーバー コントロールに通知します。

私の目は、イベントがトリガーされたときにポイントを逃したことを私にさせるこの「ロジック」ワードにあります

しかし、その場合、イベントをトリガーするにはどうすればよいですか、またはリストの入力が完了したことを知るために使用できる他のイベントは何ですか?

4

1 に答える 1

1

通常、これは を削除したAutoEventWireup="true"か、false に設定したことを意味します。そのため、イベントが関連付けられていません。

また、javascript に何か問題があり、これ以上コードを実行できないことを意味する場合もあります。インスペクタ (Chrome、Safari、または Firefox の Firebug - IE 開発者ツールに依存しないでください) を開き、ページが停止する原因となる JavaScript エラーがないかどうかを確認します。

handlerMethodが正しく設定されていないことを意味する場合もあります。最適な方法はOnDataBound="handlerMethod"、このメソッドの html 部分とコード ビハインドを削除してから、 に移動しdesign view、[イベント] で [プロパティ] ウィンドウを開き、 をダブルクリックするOnDataBoundと、イベントが正しく追加されます。 . そこにブレークポイントを設定し、ファイルでデバッグを実行しdebug="true"ますweb.config

于 2011-07-08T08:02:30.447 に答える