我已經嘗試將超鏈接添加到我的Javascript下拉列表,但是當我嘗試這樣做時,下拉列表不起作用。有三個下拉列表:使用Javascript添加超級鏈接到層疊下拉列表
- 州:加利福尼亞州,俄勒岡州)
- 縣:加州有蒙特雷,Alemeda隨着城市&俄勒岡州有一個城市即道格拉斯
- 城市:蒙特利的縣,阿拉米達具有城市:
例如,如果用戶選擇:
- 州:加利福尼亞州
- 縣:蒙特利
- 市:薩利納斯
我想,這樣在選擇時,它薩利納斯有一個超鏈接,它要麼:
- 自動重定向到的超級鏈接或
- 有一個按鈕來完成操作。
我如何去用下面的代碼添加超鏈接到城市(最終下拉列表):
的Html
<form name="myform" id="myForm">
<select name="optone" id="stateSel" size="1">
<option value="" selected="selected">Select state</option>
</select>
<br>
<br>
<select name="opttwo" id="countySel" size="1">
<option value="" selected="selected">Please select state first</option>
</select>
<br>
<br>
<select name="optthree" id="citySel" size="1">
<option value="" selected="selected">Please select county first</option>
</select>
的Javascript
var stateObject = {
"California": {
"Monterey": ["Salinas", "Gonzales"],
"Alameda": ["Berkeley"]
},
"Oregon": {
"Douglas": ["Roseburg", "Winston"],
}
}
window.onload = function() {
var stateSel = document.getElementById("stateSel"),
countySel = document.getElementById("countySel"),
citySel = document.getElementById("citySel");
for (var state in stateObject) {
stateSel.options[stateSel.options.length] = new Option(state, state);
}
stateSel.onchange = function() {
countySel.length = 1; // remove all options bar first
citySel.length = 1; // remove all options bar first
if (this.selectedIndex < 1) {
countySel.options[0].text = "Please select state first"
citySel.options[0].text = "Please select county first"
return; // done
}
countySel.options[0].text = "Please select county"
for (var county in stateObject[this.value]) {
countySel.options[countySel.options.length] = new Option(county, county);
}
if (countySel.options.length==2) {
countySel.selectedIndex=1;
countySel.onchange();
}
}
stateSel.onchange(); // reset in case page is reloaded
countySel.onchange = function() {
citySel.length = 1; // remove all options bar first
if (this.selectedIndex < 1) {
citySel.options[0].text = "Please select county first"
return; // done
}
citySel.options[0].text = "Please select city"
var cities = stateObject[stateSel.value][this.value];
for (var i = 0; i < cities.length; i++) {
citySel.options[citySel.options.length] = new Option(cities[i], cities[i]);
}
if (citySel.options.length==2) {
citySel.selectedIndex=1;
citySel.onchange();
}
}
}
前往espacarello的答案在這裏。這將有助於https://stackoverflow.com/questions/12287672/links-in-select-dropdown-options –
@Daniel Zuzevich這不是一個單獨的下拉列表。這個問題與我的不同,我已經看到了。我的問題中的下拉項目被放置在JavaScript文件本身中,如我的代碼所示。 – Sebastian