私はjQueryを初めて使用するので、この質問は素朴に思えるかもしれません。しかし、ここで私を助けてください。
さまざまなタイトルで動的に多数のアンカー タグを作成し、動的すぎるアンカー タグに異なるクリック イベント ハンドラーを割り当てています。
すべてのアンカー タグは異なるタイトルで完全に作成されていますが、問題は、それらすべてのイベント ハンドラーが最後に作成されたアンカー タグのイベント ハンドラーと同じであることです。したがって、いずれかのリンクをクリックすると、最後のリンクをクリックしたときのページと同じページに移動します。
ここにコードがあります
var title;
var node;
for(var i = 0; i < nodes.length; i++){
node = nodes[i];
title = node.getTitle();
jQuery("#displayNodeDetails")
.append(jQuery('<a></a>').attr({ href:'#' })
.html(title).click(function(){
EPCM.getSAPTop().LSAPI.AFPPlugin.service.navigate(node);
}));
}
ここで「displayNodeDetails」は分割です。ループが実行されるたびに「ノード」の値が変化しているときに、すべてのリンクに同じイベント ハンドラーがある理由がわかりません。コードで「ユーザー管理者」、「システム管理者」の 4 つのリンクが作成されているため確認できます。 、「コンテンツ管理者」、および「コラボレーション」ですが、すべてのリンクは「コラボレーション」と同じページに移動します。