3

ソースコードを変更できない既存のASP.NET3.5AJAX Webアプリケーション(SharePoint 2010)をカスタマイズしています。

[閉じる]ボタンの最初のイベントとしてクリックイベントハンドラーを追加する必要があります。ただし、このボタンにすでに登録されている既存のイベントハンドラーが最初に何をするかを確認したいので、何も混乱させません。

私はまだASP.NETAJAXを学習しており、Sys.UI.DomEventクラスにイベントハンドラーを追加および削除するメソッドがあることを確認できますが、それらを列挙することはできません。私はjQueryを知っており、ChromeでのJavaScriptのデバッグに精通しています。

登録されているイベントを確認し、特定の位置にカスタムイベントハンドラーを挿入するにはどうすればよいですか?

4

1 に答える 1

0

少なくとも、あなたが最初の列に並ぶことを可能にするテクニックがあります (別のスクリプトが同じトリックを採用していない限り - 可能性は低いです)。

あなたがしなければならないことは、クリックイベントをハイジャックすることです。この関連する質問は、テクニックを示しています:元の機能に干渉せずに onchange イベントをハイジャックする

関数を再定義してclick、自分で選択した関数の 1 つにするだけです。

var myButton = document.getElementById('button1')
var oldClick = myButton.click;

myButton.click = function(evt) {
  //do whatever you want.  When done, call the default click function:
  if (oldClick) oldClick(evt);
}

(リンクされた質問の構文は優れていますが、上記のコードの方が読みやすいです)。

于 2012-08-22T18:00:33.067 に答える