问题是创建一个函数showLink()
,其函数sIndx
指向当前选择列表中所选选项的索引。
<select name="executive" id="executive" class="optionLinks">
<option value="#">Select a Web site</option
<option value="http://www.whitehouse.gov">The White House</option>
<option value="http://www.usda.gov">Department of Agriculture</option>
</select>
<select name="legislative" id="legislative" class="optionLinks">
<option value="#">Select a Web site</option>
<option value="http://www.house.gov">House Web Site</option>
<option value="http://www.house.gov/house </option>
<option value="http://clerk.house.gov/">Clerk of the House</option>
</select>
<select name="judicial" id="judicial" class="optionLinks">
<option value="#">Select a Web site</option>
<option value="http://www.uscourts.gov">U.S. Courts</option>
<option value="http://www.uscourts.gov/supremecourt.html">U.S.Supreme </select>
我的回答:
function Link() {
sIndex = document.getElementByTagName("select")[this.select].options[selectedIndex];
location.href = sindex.value;
}
网页未加载,我仍然看到点击的选项,任何帮助?
答案 0 :(得分:1)
您错误输入了函数名称,它应该是document.getElementsByTagName
(复数“元素”)。
函数document.getElementsByTagName("select")
将返回select
个对象的数组。要获得正确的对象,您需要知道数组中的正确索引。您正在使用this.select
,请务必检查它是否具有正确的值。
即使可行,我也看不到您在代码中定义selectedIndex
变量的位置。也许你的意思是这样的:
function Link() {
var obj = document.getElementByTagName("select")[this.select];
// assuming this ^^^^^^^^^^^ is the right index
var item = obj.options[obj.selectedIndex];
location.href = item.value;
}
您的HTML中也存在拼写错误,#legislative
您没有正确关闭value
属性,这可能会导致问题。