我有一个div,其内容是我在一个页面上使用jQuery生成的(我只是将其称为第1页),我想加载到第2页:
<div id="latestNews">
<h4>Latest News</h4>
<ul>
<!--Section automatically loaded here and to homepage -->
</ul>
</div>
此第1页 div包含使用此代码制作的5篇最新文章的链接列表:
var $latestNews = $("#$latestNews ul");
var $titles = $("h3");
$titles.each( function( index, element ){
var i = index + 1;
if (i > 5) { return false; }
var text = "<li> <a href='$url'>" + $(element).text() + "</a> /li>";
$latestNews.append(text);
});
在第2页,这是主页,我想加载相同的div(并且只有div),但也保留附加到它的脚本。否则,它会加载div及其内容而不创建列表项。
$homelines.load("http://.../Page1.php #latestEntries");
如果Javascript / jQuery中有任何解决方案,请告诉我。第1页和第2页都是PHP语言,所以如果有PHP替代方案,我也会对它开放。
答案 0 :(得分:1)
实际上,您没有将新内容添加到第一个PHP页面 - 您将其添加到DOM。区别在于页面存储在Web服务器上,而DOM存在于虚拟空间中。
要将数据传输到第二页,您有几个选项。
(1)如果您使用按钮前进到下一页,该按钮可以从DOM中获取添加的内容,创建包含新数据的<form>
构造,并post
到第2页。第2页可以抓取传输的数据并在创建DOM时对其进行渲染。 注意:其他访问者无法使用此数据。
(2)您可以将添加的内容存储在MySQL数据库表中。现在它可以在第2页上显示,适用于所有用户和将来的访问者。
要存储(MySQL)添加的内容,您将
(a)use a <form>
construct与选项(1)中的不同之处在于您将页面重定向到中间页面,该页面将数据再次重定向到第2页之前将数据写入MySQL,或者
(b)使用AJAX - 这比听起来简单得多。 Here is a post包含一些简单的AJAX示例。