0

我喜欢在 STATIC HTML 网站上放置两个下拉选择菜单,并根据选择,将结果(联系方式)显示在一个 div 中

这是正在做的事情,但对我来说是错误的

这是javascript

function setOptions(chosen) {
 var selbox = document.myform.opttwo;

 selbox.options.length = 0;
 if (chosen == " ") {
     selbox.options[selbox.options.length] = new Option('Please select one of the options above first', ' ');

 }
 if (chosen == "1") {
     selbox.options[selbox.options.length] = new
     Option('first choice - option one', 'oneone');
     selbox.options[selbox.options.length] = new
     Option('first choice - option two', 'onetwo');
 }
 if (chosen == "2") {
     selbox.options[selbox.options.length] = new
     Option('second choice - option one', 'twoone');
     selbox.options[selbox.options.length] = new
     Option('second choice - option two', 'twotwo');
 }
 if (chosen == "3") {
     selbox.options[selbox.options.length] = new
     Option('third choice - option one', 'threeone');
     selbox.options[selbox.options.length] = new
     Option('third choice - option two', 'threetwo');
 }

}

这是html

<form name="myform">
<div align="center">
    <select name="optone" size="1" onchange="setOptions(document.myform.optone.options [document.myform.optone.selectedIndex].value);">
        <option value="0" selected="selected"></option>
        <option value="1">First Choice</option>
        <option value="2">Second Choice</option>
        <option value="3">Third Choice</option>
    </select>
    <br>
    <br>
    <select name="opttwo" size="1">
        <option value="0" selected="selected">Please select one of thed options above first</option>
        <option value="www.google.com" selected="selected">www.google.com</option>
        <option value="www.facebook.com" selected="selected">facebook.com</option>
    </select>
    <input type="button" name="go" value="Value Selected" onclick="window.open(document.myform.opttwo.options[document.myform.opttwo.selectedIndex].value);">
</div>

http://jsfiddle.net/HZNJa/

这就是我喜欢的方式

http://d.pr/i/BjjR

提前致谢

4

1 回答 1

0

您从 HTML 调用 setOptions 会返回以下错误:未捕获的 ReferenceError:未定义 setOptions。

这是解决方案:http: //jsfiddle.net/HZNJa/6/

给你的选择一个id,删除对setOptions的内联调用,然后在你的JS中调用#id.onchange事件处理程序来引用setOptions:

document.getElementById('changer').onchange = function () {
    setOptions(document.myform.optone.options[document.myform.optone.selectedIndex].value);
}
于 2013-10-20T15:49:46.637 回答