各スパンで個別に一時停止ボタンを機能させようとしています。ユーザーが「追加」ボタン (コードは表示されていません) をクリックするたびに、<span class="emailform">
これらの要素の新しいセットが<div class="email">
. 新しく追加された要素のスパンの一時停止ボタンにクリック イベント ハンドラーをアタッチする方法がわかりません。私がやろうとしていることを見ることができるように、画像を添付しました。(私は自分の関数を呼び出そうとしているだけでなく、間違ったトリガー()を使用しています。)
ここにフィドルも含めました。
ご協力いただきありがとうございます!
html:
<div class="email">
<span class="emailform">
<label for="vs-email" class="use-email" >Via email:</label>
<input type="text" class="text-input" />
<input type="button" class="pause" />
<input type="button" class="remove" value="remove" />
</span>
</div>
jQuery:
$(".pause").on('click', function(e){
$(e.target).closest("span").trigger(pauseRestore());
});
function pauseRestore(){
var oddClick = $(this).data("oddClick");
$(this).data("oddClick", !oddClick);
if(!oddClick) {
pauseAction();
}else {
restoreAction();
}
}
元のスタート(良い)
「追加」ボタンをクリックした後に追加された別のもの(良い)
クリックして最初だけ一時停止(良い)
クリックして新しい追加を一時停止します (悪い、何も起こりません)
最初のスパンで一時停止ボタンをクリックします(BAD -- 両方が選択されて一時停止しています)
これが私が望む結果です。ユーザーが新しく追加されたスパン の一時停止ボタンをクリックすると、これだけが一時停止され、他のスパンは一時停止されません。それぞれが別々です。