こんにちはすべて私は以下のコードを使用しており、チェックボックスのステータスに基づいてボタンを表示して非表示にしたかったとします。私はイベントを呼び出すためにトリガを使用していますが、そのボタンを表示または非表示にするコードを記述します。以下のコードを使用すると、「System.InvalidOperationException:ID「chkDelete」のコントロールがUpdatePanel 'UpdatePanel1'のトリガーに見つかりませんでした」というエラーが表示されます。私を助けてください。 ControlIdチェックボックスフィールド<asp:CheckBox ID="chkDelete" runat="server" AutoPostBack="true" ></asp:CheckBox>
ためチェックボックスコントロールのasp.netトリガー
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers ="false">
<ContentTemplate>
<asp:GridView ID="gvEventMechanic" runat="server" AutoGenerateColumns="False" PageSize="5"
GridLines="None" AllowSorting="true" BorderWidth="1"
EnableViewState="true" AllowPaging="true">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
Disable
</HeaderTemplate>
<ItemStyle HorizontalAlign="Center" />
<ItemTemplate>
<asp:CheckBox ID="chkDelete" runat="server" AutoPostBack="true" ></asp:CheckBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="chkDelete" EventName="CheckBoxEventChanged" />
</Triggers>
</asp:UpdatePanel>
CheckedChangedを使用すると、1つのセッションで複数のチェックボックスをクリックすると、ページがポストバックします。それを避けるために、私はパネルとトリガを更新するつもりです。他の方法であれば私に知らせてください。このチェックボックスはグリッド内にあります – premg
controlIdを取得するのは難しいです。あなたはクライアント側からjavascriptを使って何かを試すことができるかもしれません。 – Saanch
あなたは私にその事例をいくつか教えていただけますか? – premg