DropDownList中的onChange和onSelect

Nas*_*ser 8 html javascript onchange

我有一个DropDownList,询问用户是否想加入俱乐部:

Do you want to join the club
Yes
No
Run Code Online (Sandbox Code Playgroud)

在此列表下,还有另一个列表,默认设置为禁用.这个名单有俱乐部的部门.在用户选择"是"之前,不会启用此列表.

我构建了以下代码,但我无法解决的问题是让我们假设用户选择是,然后他改变了他的决定,所以他将再次选择否.在这种情况下,部门列表仍然启用.当他再次选择No时,我希望它被禁用.

<html>
    <head>
        <script type="text/javascript">
            function disable()
            {
                document.getElementById("mySelect1").disabled=true;
            }
            function enable()
            {
                document.getElementById("mySelect1").disabled=false;
            }
        </script>
    </head>
    <body>
        <form>
            <select id="mySelect" onChange="enable();">
                <option onSelect="disable();">No</option>
                <option onSelect="enable();">Yes</option>
            </select>
            <select id="mySelect1" disabled="disabled" >
                <option>Dep1</option>
                <option>Dep2</option>
                <option>Dep3</option>
                <option>Dep4</option>
            </select>
        </form>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我认为这样onSelect="disable();"可以解决问题,但仍然无效.

谢谢

j08*_*691 16

我会像这个jsFiddle例子那样做.

JavaScript的:

function check(elem) {
    document.getElementById('mySelect1').disabled = !elem.selectedIndex;
}
Run Code Online (Sandbox Code Playgroud)

HTML:

<form>
<select id="mySelect" onChange="check(this);">
<option>No</option>
<option>Yes</option>
</select>

<select id="mySelect1" disabled="disabled" >
<option>Dep1</option>
<option>Dep2</option>
<option>Dep3</option>
<option>Dep4</option>
</select>
</form>
Run Code Online (Sandbox Code Playgroud)