我有以下创建分页:
pagenumber

现在我想将课程pagenumber
更改为" pagenumberselected"如果来自?p=5
的href包含当前页面中的localhost/myproject/downsite?p=5
(One Color <input type="radio" name="NumberOfColors" <?php if (isset($NumberOfColors) && $NumberOfColors=="oneColor") echo "checked";?> id="oneColor" value="oneColor"><br>
Two Colors <input type="radio" name="NumberOfColors" <?php if (isset($NumberOfColors) && $NumberOfColors=="twoColor") echo "checked";?> id="twoColor" value="twoColor"/><br>
Three Colors <input type="radio" name="NumberOfColors" <?php if (isset($NumberOfColors) && $NumberOfColors=="threeColor") echo "checked";?> id="threeColor" value="threeColor"/><br>
Four Colors <input type="radio" name="NumberOfColors" <?php if (isset($NumberOfColors) && $NumberOfColors=="fourColor") echo "checked";?> id="fourColor" value="fourColor"/><br>
Five Colors <input type="radio" name="NumberOfColors" <?php if (isset($NumberOfColors) && $NumberOfColors=="fiveColor") echo "checked";?> id="fiveColor" value="fiveColor"/><br><br>
)
答案 0 :(得分:1)
由于类和链接是在页面加载(通过php)上设置的,因此在页面加载时定义了类。单击该链接将重新加载(或更改)页面,如果您希望在p = 5时更改类,您只需要一个php条件来定位该页码并更改类(当页面加载时)。 / p>
<?php
for($i = 1; $i<=10; $i++){
if (i == 5 ) {
?>
<a class="pagenumber selected" href="?p=<?php echo $i; ?>"><?php echo $i; ?></a>
<?php } else { ?>
<a class="pagenumber" href="?p=<?php echo $i; ?>"><?php echo $i; ?></a>
<php } } ?>
我实际上更喜欢下面的代码,但实质上它们都是相同的东西,它只取决于你对回显HTML的看法,而不是将它从PHP脚本中拆分。
<?php
for($i = 1; $i<=10; $i++){
if ($i == 5 ) {
//change link where p=5
echo '<a class="pagenumber selected" href="?p='.$i.'">'.$i.'</a>';
} else {
//all links where p!=5
echo '<a class="pagenumber" href="?p='.$i.'">'.$i.'</a>';
}
} ?>
通过检查链接的href,然后添加/删除类,可以在页面加载后使用jQuery 执行此操作。但是,在实施更改之前,您已等待以加载页面。通过在php中执行此操作,页面可以根据需要加载,而无需等待javascript加载和运行。
当
当前页面等于链接时,您也可以使用$_GET[]
变量更改页面链接。
<?php
if (isset($_GET['p'])) {
$thispage = $_GET['p'];
} else {
$thispage = '';
}
for($i = 1; $i<=10; $i++){
if ($i == $thispage) {
//change link when link = current page
echo '<a class="pagenumber selected" href="?p='.$i.'">'.$i.'</a>';
} else {
//all links when link != current page
echo '<a class="pagenumber" href="?p='.$i.'">'.$i.'</a>';
}
} ?>
答案 1 :(得分:0)
您需要使用$_GET
全局数组来处理来自网址的参数。您可以通过参数名称访问它:$_GET['p']
。检查参数是否存在也很重要。您可以使用isset
方法实现此目的。解决方案:
<?php for($i = 1; $i <= 10; $i++): ?>
<?php if(isset($_GET['p']) && $_GET['p'] == $i): ?>
<a class="pagenumberselected" href="?p=<?php echo $i; ?>"><?php echo $i; ?></a>
<?php else: ?>
<a class="pagenumber" href="?p=<?php echo $i; ?>"><?php echo $i; ?></a>
<?php endif; ?>
<?php endfor; ?>