2

我有 2 个下拉列表 dl9 和 dl10,如下所示。
如果我从 dl9 中单击是,则 dl10 可见,否则它是隐藏的。

现在,当我单击“否”并将其转到数据库时,我想为 dl10 设置选择值“无”;如果是,则必须使“已完成”和“正在进行”可见。

我怎样才能做到这一点?

<asp:DropDownList ID="DropDownList9" runat="server" Width="128px"  onchange="display()"  >
        <asp:ListItem Value="yes">Yes</asp:ListItem>
        <asp:ListItem Value="no">No</asp:ListItem>
    </asp:DropDownList>

<asp:DropDownList ID="DropDownList10" runat="server" Width="107px" TargetControlID="DropDownList9" >
        <asp:ListItem Value="completed">Completed</asp:ListItem>
        <asp:ListItem Value="ongoing">Ongoing</asp:ListItem>
        <asp:ListItem Selected="True" Value="none" Enabled="False">[SELECT]</asp:ListItem>
    </asp:DropDownList>

我隐藏 dl10 的 Javascript 是:

<script type="text/javascript" language="javascript">
    function display()
     {
         if (document.getElementById('<%=DropDownList9.ClientID%>').value == "no") 
        {
            document.getElementById('d1').style.visibility = "hidden";
            document.getElementById('<%=DropDownList10.ClientID%>').style.visibility = "hidden";
            document.getElementById('<%=DropDownList10.ClientID%>').value = "none";
            //DropDownList10.SelectedValue = "none";   not wrkin
        }
        else {
            document.getElementById('<%=DropDownList10.ClientID%>').style.visibility = "visible";
            document.getElementById('d1').style.visibility = "visible";
        }
    }
 </script>

我的问题是:当我单击“否”并提交“已完成”时,将进入数据库......但我需要输入“无”......

4

3 回答 3

4

Enabled="False"中的财产ListItem正在制造问题。

<asp:ListItem Selected="True" Value="none" Enabled="False">[SELECT]</asp:ListItem>

我删除并检查,它工作正常。

[更新]

如果要隐藏该选项,请在加载页面时隐藏该选项javaScript。将此代码写入script标签内,它将隐藏该选项。

window.onload = function () {
     document.getElementById('<%=DropDownList10.ClientID%>').options[2].style.display = "none";
};

[/更新]

于 2013-09-06T06:55:30.050 回答
1

您必须添加一个值为 none 的元素

于 2013-09-06T06:37:28.690 回答
0
document.getElementById('<%=DropDownList10.ClientID%>').val("none").attr("selected", "selected");
于 2013-09-06T06:52:34.153 回答