我正在处理一段代码,它将在模板中显示mysql查询的内容,因为查询可能会返回数百个结果,其中包括页面限制器和导航工具。不幸的是,在选择每页显示的结果数后,我在传递页码时遇到问题。页面导航是独立的,工作正常,但一旦此功能运行,它就无法看到页码。
<script>
function refreshpage(results_per_page){
window.location="classifieds.php?&results_per_page="+results_per_page
}
</script>
<?php
$results_per_page = $_GET['results_per_page'];
?>
<select onchange="refreshpage(this.value);">
<option selected value="<?php echo $results_per_page?>"><?php echo $results_per_page?></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
上面的代码工作正常并自动重新加载页面,但是当我尝试引入$ page变量时,pageRefresh函数无法正常工作。这是我正在追求的事情的正确方法,还是有另一种让我包含另一个变量的方法。它需要的只是;
$page;
取自网址
$page = $_GET['page'];
我尝试使用onchange函数发送它,从refreshPage函数中调用它,甚至使用中间函数来组合包含所有相关数据的扩展,似乎没有任何结果。
由于
编辑:
感谢sasse,我得到足够的信息来纠正我相信的代码。这似乎现在有效,所以如果其他人有这个问题,这似乎是一个很好的解决方案。谢谢! (我从未想过要使用val!)
<script>
function refreshpage(results_per_page){
var page = <?php echo $_GET['page'] ?>;
window.location="classifieds.php?page=" + page + "&results_per_page="+results_per_page
}
</script>
<?php
$results_per_page = $_GET['results_per_page'];
?>
<select onchange="refreshpage(this.value);">
<option selected value="<?php echo $results_per_page?>"><?php echo $results_per_page?></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
答案 0 :(得分:0)
因为您正在调用&#34; refreshPage&#34;使用onchange替换&#34;选择&#34; -element并发送&#34; this.value&#34;您将所选值发送给方法。
因此,您将向refreshPage方法发送1,2,3,4或5作为参数&#34; results_per_page&#34;。
我认为你不希望每页有一个结果,但我可能错了。
您何时设置&#34; results_per_page&#34;或者&#34;页面&#34;?我的想法是&#34;选择&#34; - 元素用于&#34;页面&#34;属性,因此方法&#34; refreshPage&#34;应该接受&#34; page&#34;作为参数。
我会写一些代码来证明我的意图。
<script>
function refreshpage(page){
var results_per_page = <?php echo $_GET['results_per_page'] ?>;
window.location="classifieds.php?page=" + page + "&results_per_page="+results_per_page
}
</script>
<select onchange="refreshpage(this.value);">
<!-- If this select is for "page" then I don't understand this next line -->
<option selected value="<?php echo $results_per_page?>"><?php echo $results_per_page?></option>
<option value="1">1</option>
<option value="2">2</option>
...
</select>
如果案件是我没有正确理解那么告诉我我的想法是什么,我会更新我的答案。而且,只要&#34;页面&#34;去,什么时候设置?你有&#34;下一个&#34;和&#34;之前的&#34;按钮?