ここで使用する2つのjQuery関数があります。
1)click
。これは唯一のパラメータであるため、無名関数をとり、要素がクリックされたときにそれを実行します。
2)html
。これは、唯一のパラメータであるhtml文字列を受け取り、要素の内容を提供されたhtmlに置き換えます。
だから、あなたのケースでは、次の操作を行うことになるでしょう:
$('#content-container a').click(function(e){
$(this).parent().html('<a href="#">I\'m a new link</a>');
e.preventDefault();
});
あなただけにしたい場合は、むしろそれですべてを交換するよりも、あなたのdivにあなたをコンテンツを追加append
を使用する必要があります。
$('#content-container a').click(function(e){
$(this).parent().append('<a href="#">I\'m a new link</a>');
e.preventDefault();
});
あなたが目をしたい場合eは新しいあなたがevent delegationを使用する必要があり、クリックされたときにも、新しいコンテンツを追加するためのリンクを追加しました:
$('#content-container').on('click', 'a', function(e){
$(this).parent().append('<a href="#">I\'m a new link</a>');
e.preventDefault();
});
類似の質問を参照してください: https://stackoverflow.com/questions/1309452/how-to-replace-innerhtml-of-a-div-using-jquery –