resultとは
- ここで説明する result とは次の語句からなるjQueryのEventObjectプロパティです。
- result
- 読み: リザルト
意味: 結果
resultプロパティの概要
この EventObject プロパティは、前回の同種イベントが発生したときに実行されたハンドラーのリターン値を保存しており、それを取得することができます。
ただし前回実行されたハンドラーと同じハンドラーが実行された場合にはイベントオブジェクトは再生成されることに注意が必要です。
また、このプロパティは読み書きできるので、直接に値を書き込むことで、ハンドラー間のデータの受渡しにも使えます。
構文
サンプルを見る前に構文を確認しておきます。
構文は 02 行目の部分です。 02 行目の eo は 01行目の function(eo) の イベントオブジェクトを参照しています。
$(Selector).EventMethod(function(eo){
var eventResult = eo.result;
});
サンプルコードと実行結果
ここでは、ボタン要素の click イベントに2つの関数をアタッチしておき、 イベントメソッドを実行した時に生成されるイベントオブジェクトの result プロパティの値を取得して表示してみます。
サンプルコード: HTML
<head>
<style>...</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<button id="idButton">BUTTON</button>
<script>...</script>
</body>
- 06: button (ボタンです。この要素のクリックイベントからイベントオブジェクトのプロパティを取得してボタンのテキストに表示します。)
サンプルコード: script
<script>
$(function(){
$("#idButton").click(function(eo){
return 100;
});
$("#idButton").click(function(eo){
$(this).text(eo.result * 2);
});
});
</script>
- 07: eo.result (イベントオブジェクトの result プロパティの値を取得しています。 この 07 行目の eo は 06 行目の function(eo) を参照しています。また、06 行目の eo は 03 行目の eo の return 値を result 値として継承していることになります。)
実行 :