如何更改CascadingDropDown控件的可见性

时间:2012-01-21 22:45:43

标签: asp.net ajaxcontroltoolkit cascadingdropdown

更改.NET Ajax Control Toolkit CascadingDropDown控件的visibility属性的首选方法是什么?当从查询返回null值时,我想将控件呈现为“不可见”。

使用工具包扩展程序时,似乎“{SeseIndexChanged”事件不会从<asp:DropDownList>触发。

1 个答案:

答案 0 :(得分:1)

老实说,我只会将DropDownList所附加的CascadingDropDownExtender定位为display:none css样式。你可以在页面上的javascript中这样做:

<script type="text/javascript">
    function hideDDL(){
        // Get the DropDownList by its ID value
        var ddl = document.getElementById("<%= myDropDownList.ClientID %>");
        // If there are no items in the drop down, hide it
        if (ddl.options.length == 0)
            ddl.style.display = "none";
    }
</script>

然后,在DropDownList标记中,只需将上面的函数添加到客户端onchange事件中:

<asp:DropDownList runat="server" ID="myDropDownList" onchange="hideDDL();" ... >
    ...
</asp:DropDownList>

注意:显然,您需要javascript函数中的逻辑来指示DropDownList是否应该被隐藏(例如检查控件是否没有要选择的元素等)。如果您遇到问题,请告诉我,我也可以尝试帮助。
编辑 :我添加了一个可能的逻辑示例=)