就像在演示kirby
<?php foreach(page('projects')->children()->visible()->limit(3) as $project): ?>
我想对记录进行动态限制。我怎么能做到呢?
我试过JavaScript,但它不起作用。
这是JavaScript代码没有工作
<script>
var p1 = 3;
function load()
{
p1=p1+3;
}
</script>
<?php
$number="<script>document.write(p1)</script>";
// echo $number;
<?php foreach(page('projects')->children()->visible()->limit($number) as $project): ?>
//Code Here
<?php endforeach ?>
<div class="text-center"><a href="#" class="load-more" onClick="load();">LOAD MORE</a></div>
告诉我是否有人做过。
你不能,至少不能用这种方式。
想想你的代码何时何地被执行。PHP在浏览器接收到页面之前就由服务器执行了。JavaScript在页面加载完成后由浏览器执行。
你可以有一个单独的脚本生成你需要的数字,并通过AJAX请求将其作为GET或POST值传递给脚本,或者在PHP中生成你需要的数字。
对于AJAX请求PHP脚本应该是这样的
<?php
$number = $_GET['number'];
foreach (page('projects')->children()->visible()->limit($number) as $project) {
echo .....
}
?>
, JavaScript将通过AJAX请求调用该脚本,并将生成的HTML放入页面中,例如:
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
document.getElementById("container").innerHTML = xht.responseText;
}
xhr.open("GET", "script.php?number=" + p1, true);
xhr.send();