我是php的新手。如何将选定的下拉框值传递给下一页url?我有这样的事情: -
<script language="javascript">
function showMe(str)
{
document.getElementById('myDiv').innerHTML = 'You have selected :'+str;
}
</script>
<select id="ccrseid" name="ccrseid" onchange="showMe(this.value);">
<option value="">Select</option>
<option value="1">Computer Science</option>
<option value="2">Engineering</option>
<option value="3">Business</option>
<option value="4">Education and Training</option>
</select>
<div id="myDiv"></div>
</body>
</html>
<a href="#"onclick="document.location.href='timer.php?selectvalue='+document.getElementById('myDiv').value">Submit</a>
当我执行im在网址上获取“未定义”时。
http://localhost/timer.php?selectvalue=undefined
我该如何解决这个问题?
答案 0 :(得分:1)
有了你的问题,你似乎想要实现两种不同的结果;第一个是您要将<select>
保管箱的值传递到登陆php页面,而您的示例代码建议您要传递<select>
值并附加“您已选择:”到它。
所以基本上 - 使用给定的信息 - 你想要实现两个结果,第一个是最终的“GET”网址
http://localhost/timer.php?selectvalue=1
另一个“GET”网址
http://localhost/timer.php?selectvalue=You%20have%20selected%20:1
对于第一个结果,使用javascript是一种不好的方法,我建议您使用标准的html <form>
标记来构建表单而<input>
而不是<a>
}标记为按钮
<form action="timer.php" method="get">
<select id="ccrseid" name="selectvalue" onchange="showMe(this.value);">
<option value="">Select</option>
<option value="1">Computer Science</option>
<option value="2">Engineering</option>
<option value="3">Business</option>
<option value="4">Education and Training</option>
</select>
<input type="submit" value="Submit">
<form>
使用第二个解决方案,即将<select>
值打印到div并将该数据发送到带有<a>
标记的着陆页,您需要做的是更改链接在最后一行
<a href="#"onclick="document.location.href='timer.php?electvalue='+document.getElementById('myDiv').value">Submit</a>
到
<a href="#"onclick="document.location.href='timer.php?electvalue='+document.getElementById('myDiv').innerHTML">Submit</a>
答案 1 :(得分:0)
虽然可以用javascript我建议你用php做这个。它确保您的访问者不需要启用JavaScript即可利用该表单。
<form action="timer.php" method="post">
<select id="ccrseid" name="selectvalue"">
<option value="">Select</option>
<option value="1">Computer Science</option>
<option value="2">Engineering</option>
<option value="3">Business</option>
<option value="4">Education and Training</option>
</select>
<input type="submit" value="Submit">
<form>
然后在你的timer.php文件的顶部......
if((int)$_POST['selectvalue']){
header('Location:timer.php?selectvalue=' . (int)$_POST['selectvalue']);
exit;
}
不需要javascript。