0
の.on( "click"、...)は機能しませんでした(おそらく例外はスローされません)。私は.onclickを使うことができないので、私はこの方法を.on( "クリック" ...)で試しました。私はJS/jQueryを初めて使用しているので、クリック機能で同じで作成されたオブジェクトでは、
クリックした行の下に新しい行を追加しようとしました。これは新しく作成された行にも有効です。
私のhtml:
<tbody>
<tr id="line1"><td>Stuff1</td><td>Stuff</td><td>Stuff</td><td>Stuff</td><td>Stuff</td></tr>
<tr id="line2"><td>Stuff2</td><td>Stuff</td><td>Stuff</td><td>Stuff</td><td>Stuff</td></tr>
<tr id="line3"><td>Stuff3</td><td>Stuff</td><td>Stuff</td><td>Stuff</td><td>Stuff</td></tr>
<tr id="line4"><td>Stuff4</td><td>Stuff</td><td>Stuff</td><td>Stuff</td><td>Stuff</td></tr>
</tbody>
マイJS:あなたの助けを
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("tr").on("click",function(){
var childId = $(this).attr("id")+1;
if($("#"+childId).length){
$("#"+childId).toggle();
}else{
$(this).after('<tr id="'+childId+'"><td>Stuffxxxx</td><td>Stuff</td><td>Stuff</td><td>Stuff</td><td>Stuff</td></tr>');
//AJAX
}
});
});
</script>
ありがとう! :)
イベント委譲を使用します。 – evolutionxbox
'var childId = $(this).attr(" id ")+ 1;'これは魔法のように 'line1'を' line2'に変えないでしょう、 'line11'を作るつもりです –