这取决于您是在表单中还是在 URL 中。
如果您在一个表单中,这很容易,因为用户更改了他们想要更改的输入字段,而其他人则留在那里:
<form>
<input type="p" value="1" />
<input type="c" value="1" />
<input type="s" value="100" />
<input type="submit" />
</form>
基于 URL 的方法的问题是您必须像这样为每个方法设置 url:
<a href="?p=1&c=1&s=1">$1 Starting Price</a>
<a href="?p=1&c=1&s=10">$10 Starting Price</a>
<a href="?p=1&c=1&s=100">$100 Starting Price</a>
您必须这样做才能使其动态化:
<a href="?p=<?php echo urlencode($_GET['p']) ?>&c=<?php echo urlencode($_GET['c']) ?>&s=1">$1 Starting Price</a>
您的所有链接都需要大量输入。您可以创建一个 PHP 函数来处理更改一个值,如下所示:
function genUrl($newKey, $newVal) {
$url = '?';
foreach ($_GET as $key => $val) {
if ($url != '?') {
$url .= '&';
}
$url .= urlencode($key) . '=' ($key == $newKey ? $newVal : urlencode($val));
}
return $url;
}
你的 html 看起来像这样:
<a href="<?php echo genUrl('s', 1) ?>">$1 Starting Price</a>
<a href="<?php echo genUrl('s', 10) ?>">$1 Starting Price</a>
<a href="<?php echo genUrl('s', 100) ?>">$1 Starting Price</a>