我尝试使用选项值创建动态链接,但它不起作用。有人可以帮我找到错误吗?
这是我的代码:
<select id="ID1"name="provincia">
<option value=""selected="selected">Seleziona dal menuù a tendina</option>
<option value="agrigento">Agrigento </option>
<option value="alessandria">Alessandria </option>
<option value="ancona">Ancona </option>
<option value="aosta">Aosta </option>
<option value="aquila">L'Aquila </option>
</select>
<a href="https://domainname.com/clients/cart.php?a=add&pid=76&sld=<?php echo $_GET["provincia"]; ?>&systpl=e24&language=Italian"> Clicca Qui </a>
答案 0 :(得分:0)
我认为你实际上需要javascript,否则你需要通过get(或post)方法发送表单,刷新页面(或使用ajax)来更新链接......这是更简单的方法,imho:
<select id="ID1"name="provincia" onchange="get_url(this.value);">
<option value=""selected="selected">Seleziona dal menuù a tendina</option>
<option value="agrigento">Agrigento </option>
<option value="alessandria">Alessandria </option>
<option value="ancona">Ancona </option>
<option value="aosta">Aosta </option>
<option value="aquila">L'Aquila </option>
</select>
<a id="link" href="https://domainname.com/clients/cart.php?a=add&pid=76&sld=VAR&systpl=e24&language=Italian"> Clicca Qui </a>
JS:
function get_url(val) {
link=document.getElementById('link');
link.href=link.href.replace(/sld=\w+/,'sld='+val);
console.log(link.href);
}
演示:http://jsfiddle.net/emjj473g/1/
(F12,打开控制台,查看链接更新,和/或点击链接以查看它确实有效......)
说明,如果需要,您可以使用onchange
事件处理程序调用get_url()函数,并将选定的值传递给它,然后替换href
/ {link} a element
属性的所需部分。当然,您可以创建其他条件来检查值(例如,用户必须选择有效值来更新链接)。
答案 1 :(得分:0)
你可以用这样的PHP
做到这一点<?php
$locations = ['Arizona', 'Siberia', 'Antarctica'];
if (isSet($_GET['selection'])) {
$q = urlEncode($locations[$_GET['selection']]);
header('Location: http://www.google.com/search?q=' . $q); }
?>
<form method="get" action="?">
<p>
<select id="selection" name="selection">
<option value="0">Arizona</option>
<option value="1">Siberia</option>
<option value="2">Antarctica</option>
</select>
</p>
<p><input type="submit"/></p>
</form>