アンカーを作成し、データを保存してdiv要素に追加する関数にこのコードがあります
var x = $("<a class='randomclass'></a>");
x.data('foo', 'bar');
console.log(x.data());
...
$("<div></div>").append(
x
);
...
そのデータを取得するイベント ハンドラーを作成しようとすると、未定義であることが示されます。要素にアクセスするさまざまな方法を試しましたが、それらはすべてデータを返しません
$("body").on("click", "a.randomclass", function (event) {
event.preventDefault();
console.log( $(event.target).data('foo') );
console.log( $(event.currentTarget).data('foo') );
console.log( $(this).data('foo') );
});
これがそうである理由は何ですか?
編集: タイプミスを修正しました。