谁能告诉我为什么这不起作用?我已经到处搜寻了。
通常当我这样做时,它没有触发器。
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div style="width:15%;float:left;">
<asp:Image ID="Image1" runat="server" ImageUrl="~/Img/Untitled1.png" CssClass="imagez" />
</div>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="DropDownList1" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
<div style="width:85%;float:left;height:100%;padding-top:2%;">
<asp:Label ID="Label2" runat="server" Text="CPU" CssClass="auto-style7" Font-Names="sans-serif"></asp:Label>
<br />
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" CssClass="bla" DataSourceID="SqlDataSource1" DataTextField="Name" DataValueField="Name" Font-Names="sans-serif" EnableViewState="true" AppendDataBoundItems="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Selected="True">Pick a CPU</asp:ListItem>
</asp:DropDownList>
这是SelectedIndexChanged
的代码:
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
Label2.Text = "please";
}
答案 0 :(得分:0)
您应该将Label2
控件包含在更新面板内容模板中,如下所示,否则将不会使用新值刷新。
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div style="width:15%;float:left;">
<asp:Image ID="Image1" runat="server" ImageUrl="~/Img/Untitled1.png" CssClass="imagez" />
<asp:Label ID="Label2" runat="server" Text="CPU" CssClass="auto-style7" Font-Names="sans-serif"></asp:Label>
<br />
</div>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="DropDownList1" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
<div style="width:85%;float:left;height:100%;padding-top:2%;">
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" CssClass="bla" DataSourceID="SqlDataSource1" DataTextField="Name" DataValueField="Name" Font-Names="sans-serif" EnableViewState="true" AppendDataBoundItems="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Selected="True">Pick a CPU</asp:ListItem>
</asp:DropDownList>
注意:1。如果仍然无法使用,请尝试从触发器中删除EventName
以下代码
<Triggers>
<asp:AsyncPostBackTrigger ControlID="DropDownList1" EventName="SelectedIndexChanged" />
</Triggers>
CssClass="bla"
并尝试更改客户端下拉列表的任何行为答案 1 :(得分:0)
您想要更改updatepanel之外的标签。而不是逻辑。 如果将Label2移动到
<asp:UpdatePanel><ContentTemplateit>
它会起作用。 (我测试过)