gpt4 book ai didi

php - 从 AJAX 加载页面中的另一个页面加载 div

转载 作者:行者123 更新时间:2023-12-01 05:02:04 24 4
gpt4 key购买 nike

我正在使用 jQuery 地址来从其他页面加载特定内容并更改地址栏中的 URL。

我正在开发一个类似社交网络的小型网站,所以我正在读出 ID通过 PHP 获取 MySQL 数据库的 posts 表。我想利用 jQuery 和 AJAX 的可能性来动态读取所有内容。

我发现,我必须使用 live() (结果是旧的),delegate() (它在 1.7.1 中也被证明是旧的)或 on() (事实证明这是最好的可能性使事件在通过 jQuery + AJAX 动态加载的内容中工作。

我还在某处读到,我无法使用 load()get() 从另一个加载新内容页面已加载的内容内,因为它不会“冒泡”(我什至不知道这意味着什么)。

要在 AJAX 加载的页面中加载新内容,我需要做什么?

这是我尝试使用的代码片段(包含在加载的页面上):

<?php 
if(exist('`posts`')) {
$load = mysql_query('SELECT `id` FROM `posts` ORDER BY `id` DESC LIMIT 10');
while($row = mysql_fetch_object($load)) {
?>
<script type="text/javascript">
$('body').on('body', 'load', function() {
$.get('getpost.php', { pid: <?= $row->id ?> }, function (data) {
$('#posts').html($('#post_<?= $row->id ?>', data).html()).show();
});
$('#posts').off('load');
});
</script>
<?php
}
}
else {
?>
<div align="center">No posts yet.</div>
<?php
}
?>

getpost.php 是我的文件,我可以从中获取 div_$row->id 以便它出现在起始页上。

PLUS(只是为了您的知识而添加)我希望内容加载内容而无需鼠标悬停、单击或模糊事件。

谢谢。

最佳答案

如果您希望将特定事件映射动态应用于与其选择器匹配的任何新 DOM 元素,则需要使用“.live()”。或者,您可以将行为附加到加载的每个内容 block 。

独立于数据库查找来编写和开发 ajax 负载,以使事情变得更简单。以下代码片段在每个元素加载后触发另一个 ajax 调用。

<?php
$id = 'div'.mt_rand();
$counter = isset($_REQUEST['counter']) ? $_REQUEST['counter'] : 0;
$next = $counter + 1;
echo <<<END
<div id="{$id}">{$counter}
<script>
$(function() {
$.ajax('/url?counter={$next}', function(html) {
$(html).appendTo($('#{$id}').parent()); // or whatever your favorite method is for adding a sibling
});
});
</script>
</div>
END;
?>

关于php - 从 AJAX 加载页面中的另一个页面加载 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8989324/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com