使用asp.net中的更新面板排除AutoPostback

时间:2016-01-12 11:41:26

标签: c# asp.net updatepanel

我有两个dropdownlist,首先OnSelectedIndexChanged我得到第二个dropdownlist值。

目前我的代码包含AutoPostBack = true,这会导致整个页面回发。

我不希望该页面获得Postback,同时也获得第二个下拉列表值。

我听说过UpdatePanel,但我并不知道如何正确使用它,但我从here尝试了一下,但它没有解决我的问题。

这是我的HTML。请建议如何做到这一点

<tr>
        <td class="label" style="width: 7%; font-size: 120%; font-family: Courier New">
            Project
        </td>
        <td class="field" style="width: 7%">
            <asp:DropDownList ID="ddlProject" runat="server" Width="250" OnSelectedIndexChanged="ddlProject_OnSelectedIndexChanged"
                AutoPostBack="true">
                <asp:ListItem Value="--- Select ---">--- Select ---</asp:ListItem>
            </asp:DropDownList>
        </td>
    </tr>
    <tr>
        <td class="label" style="width: 7%; font-size: 120%; font-family: Courier New">
            Building No
        </td>
        <td class="field" style="width: 7%">
            <asp:DropDownList ID="ddlBuilding" runat="server" AutoPostBack="true" Width="250"
                OnSelectedIndexChanged="ddlBuilding_OnSelectedIndexChanged">
                <asp:ListItem Value="--- Select ---">--- Select ---</asp:ListItem>
            </asp:DropDownList>
        </td>
    </tr>

1 个答案:

答案 0 :(得分:1)

从ajax扩展添加脚本管理器到设计页面

<asp:UpdatePanel ID="updFilter" runat="server">
<ContentTemplate>
<tr>
    <td class="label" style="width: 7%; font-size: 120%; font-family: Courier New">
        Project
    </td>
    <td class="field" style="width: 7%">
        <asp:DropDownList ID="ddlProject" runat="server" Width="250" OnSelectedIndexChanged="ddlProject_OnSelectedIndexChanged"
            AutoPostBack="true">
            <asp:ListItem Value="--- Select ---">--- Select ---</asp:ListItem>
        </asp:DropDownList>
    </td>
</tr>
<tr>
    <td class="label" style="width: 7%; font-size: 120%; font-family: Courier New">
        Building No
    </td>
    <td class="field" style="width: 7%">
        <asp:DropDownList ID="ddlBuilding" runat="server" AutoPostBack="true" Width="250"
            OnSelectedIndexChanged="ddlBuilding_OnSelectedIndexChanged">
            <asp:ListItem Value="--- Select ---">--- Select ---</asp:ListItem>
        </asp:DropDownList>
    </td>
</tr></ContentTemplate></asp:UpdatePanel>

在ddlProject_OnSelectedIndexChanged方法中,调用loadddlBuilding方法,该方法根据ddlProject选择值将数据加载到ddlBuilding。