以下のコードは、非Ajax環境で正常に動作します。reference現在実行中のスクリプトをajax形式でロードしたスクリプトタグ
<div id="target">
<script>
var thisScript1 = $('script').filter(':last');
$(document).ready(function() {
console.log(thisScript1.closest('div').attr('id')); // prints 'target'
});
</script>
</div>
<div id="second">
<script>
var thisScript2 = $('script').filter(':last');
$(document).ready(function() {
console.log(thisScript2.closest('div').attr('id')); // prints 'second'
});
</script>
</div>
私は、もうアヤックス、$('script').filter(':last')
参照最後のページのスクリプトではなく、現在のものを使用して、同じコンテンツを持つdiv要素「ターゲット」をリロードします。
<div id="target"> // reloaded using Ajax
<script>
var thisScript1 = $('script').filter(':last');
$(document).ready(function() {
console.log(thisScript1.closest('div').attr('id')); // prints 'second'
});
</script>
</div>
<div id="second">
<script>
var thisScript2 = $('script').filter(':last');
$(document).ready(function() {
console.log(thisScript2.closest('div').attr('id')); // prints 'second'
});
</script>
</div>
それは正しくロード時間で実行されているが、古いものは、(私は推測している)たところ、現在のスクリプトが挿入されているようなものです。
Ajax環境で要求された動作をどのようにすることができますか?
マイページは動的に構築され、スクリプトと場所の数は予測できません – user1288337
divのIDはわかりませんか? –
コンテンツはいくつかの異なるコンテナにインポートすることはできません – user1288337