JQuery .on()イベントハンドラーを使用してdiv内に動的に追加されたクリックされたアイテムのID値を取得するようにJSを設定しています。私の現在のコードは次のとおりです。
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="parentDiv">
<i id="test1">1</i>
<i id="test2">2</i>
<i id="test3">3</i>
</div>
<script>
$("#parentDiv").on('click', 'i[id^="test"]', function() {
var child_id = $(this).id;
child_id = child_id.replace("test","");
alert(child_id);
});
</script>
<i>
私はそれらのクリックに対して直接聞くことができないので、要素が動的に追加されます。正しく機能していないように見える領域は次の行です。var child_id = $(this).id;
完全に正しく機能していないか、親IDを取得していないようですが、子IDは取得していません。親データではなく、クリックされた子セレクターを取得するコマンドはありますか?
要素をjQueryオブジェクト(つまり、)でラップせずに使用する.prop
か、直接アクセスします。id
this.id
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="parentDiv">
<i id="test1">1</i>
<i id="test2">2</i>
<i id="test3">3</i>
</div>
<script>
$("#parentDiv").on('click', 'i[id^="test"]', function() {
var child_id = $(this).prop('id');
child_id = child_id.replace("test","");
console.log($(this).prop('id'), this.id);
console.log(child_id);
});
</script>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加