ywork2020.com

Title

前回のイベントの結果値を取得する

目次 (INDEX)

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 値として継承していることになります。)
実行結果:
実行 :

目次に戻る