所以我想要做的是,在我选择第一个选项的时刻,显示一个div,如果我选择选项2将我重定向到另一个URL。我甚至不知道是否可能! 样品:
<select class="required" id="thechoices">
<option value="">Service Type</option>
<option value="box1">From LAX Airport</option>
<option VALUE="http://www.dma.org/linuxsig/">To The Airport</option>
</select>
<div id="box1"><p>Box 1 stuff...</p></div>
答案 0 :(得分:3)
<select id="options" onchange="optionCheck()">
<option></option>
<option value="show">Show Div</option>
<option value="goto">Go To Google</option>
</select>
<div id="hiddenDiv" style="height:100px;width:300px;border:1px;visibility:hidden;">
I am visible now!</div>
<script type="text/javascript">
function optionCheck(){
var option = document.getElementById("options").value;
if(option == "show"){
document.getElementById("hiddenDiv").style.visibility ="visible";
}
if(option == "goto"){
window.location = "http://google.com";
}
}
</script>
你可以用jquery使它变得更漂亮,但这应该有效。
答案 1 :(得分:1)
是的,有可能
将onchange事件处理程序添加到您的选择。
<select class="required" id="thechoices" onchange="return airportChoice(this)">
将要隐藏的方框ID的显示设置为隐藏。
#box1{display:none} //css
这是一个通用函数,根据您的问题重新获得参数,根据您的问题,您可以轻松地从机场选择中获得大量选项,如果您需要更多选择,只需在每个选项中添加以下内容。
onchange="return airportChoice(this)"
JS功能
function airportChoice(n){
if(n.selectedIndex === 1){
// show a div (id) // alert(n.value);
document.getElementById(n.value).style.display = "block";
}else if(n.selectedIndex === 2){
location.href= n.value; // redirect the user to the url
}
// this last one is not what you ask but for completeness
// hide the box div if the first option is selected again
else if (n.selectedIndex == 0){ // alert(n[1].value);
document.getElementById(n[1].value).style.display = "none";
}
}