从下拉列表中选择数据而不刷新页面

时间:2015-07-07 11:15:19

标签: c# asp.net

在我的应用程序中,当我从下拉列表中选择类别(ddlcategory)时,数据将在纯度下拉列表中进行绑定(ddlpurity)。但页面正在刷新。所以我使用更新面板来解决此问题(页面刷新)如果选择了ddlcategory的数据,现在数据没有绑定到ddlpurity。如何在不刷新页面的情况下将数据绑定到ddlpurity。

asp设计页面

protected void ddlcategory_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (ddlcategory.SelectedItem.Text == "Gold")
        {
            BindDDLGoldPurity();
            lblheadpurity.Text = "ADD GOLD PURITY";
            txtsalesrate.ReadOnly = true;

        }
        if (ddlcategory.SelectedItem.Text == "Silver")
        {
            BindDDLSilverPurity();
            lblheadpurity.Text = "ADD SILVER PURITY";
            txtsalesrate.ReadOnly = true;

        }
        if (ddlcategory.SelectedItem.Text == "Gemstones")
        {
            txtsalesrate.ReadOnly = false;
            txtsalesrate.Text = "";

            ddlpurity.Items.Clear();

        }

    }

C#代码:

UPDATE issues 
SET due_date = due_date - (due_date % 86400) + (18 * 3600) 
WHERE HOUR(due_date) < 6

2 个答案:

答案 0 :(得分:0)

设置AutoPostBack =&#34; False&#34;摆脱令人耳目一新的行为。

答案 1 :(得分:0)

你应该包装 UpdatePanel内的两个控件。

第二部分。删除

AutoPostBack="true" 

来自DropDownList

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel runat="server" ID="UpdatePanel" UpdateMode="Conditional">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="ddlcategory" EventName="SelectedIndexChanged" />
    </Triggers>
    <ContentTemplate>
        <asp:DropDownList ID="ddlcategory" class="form-control txtboxmargin validate[required]"
            runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddlcategory_SelectedIndexChanged"
            AppendDataBoundItems="True">
            <asp:ListItem Value="">--select category--</asp:ListItem>
        </asp:DropDownList>
        <asp:DropDownList ID="ddlpurity" class="form-control txtboxmargin" AutoPostBack="True"
            runat="server" OnSelectedIndexChanged="ddlpurity_SelectedIndexChanged">
        </asp:DropDownList>
    </ContentTemplate>
</asp:UpdatePanel>

您也可以使用javascript/jquery来执行数据库请求。

请参阅reference