0

我有下拉菜单。对于一个下拉选定的项目需要触发选定的索引更改事件,对于另一个值需要显示 div 。

     <asp:DropDownList ID="ddlSortBy" runat="server" Width="100%" AutoPostBack="true" 
                                    onchange="ddlvalue()"  OnSelectedIndexChanged="ddlSortBy_SelectedIndexChanged" >
                                   <asp:ListItem Text="Select" Selected="True"></asp:ListItem>
                                   <asp:ListItem Text="File Name A-Z" ></asp:ListItem>
                                   <asp:ListItem Text="File Name Z-A" ></asp:ListItem>
                                   <asp:ListItem Text="File Type A-Z" ></asp:ListItem>
                                    <asp:ListItem Text="File Type Z-A" ></asp:ListItem>
                                   <asp:ListItem Text="Uploaded Date" ></asp:ListItem>
                                </asp:DropDownList>

和Javascript函数

     function ddlvalue() {
        var sel = document.getElementById('<%=ddlSortBy.ClientID %>');
       // alert(sel.selectedIndex);
        if (sel.selectedIndex == "5") {
            document.getElementById('<%=divDate.ClientID %>').style.display = 'block';

        }
        else {
            document.getElementById('<%=divDate.ClientID %>').style.display = 'none';

        }

    }

和服务器端更改事件

              protected void ddlSortBy_SelectedIndexChanged(object sender, EventArgs e)
    {  
    }
4

1 回答 1

0

true当你想做回发和false其他明智的事情时,你可以从 javascript 返回。

html

onchange="return ddlvalue()"

Javascript

function ddlvalue() {
    var sel = document.getElementById('<%=ddlSortBy.ClientID %>');
   // alert(sel.selectedIndex);
    if (sel.selectedIndex == "5") {
        document.getElementById('<%=divDate.ClientID %>').style.display = 'block';
        return false; 
    }
    else {
        document.getElementById('<%=divDate.ClientID %>').style.display = 'none';
        return true; 
    }
}
于 2013-09-15T05:11:16.237 回答