私は、ボタンをクリックしたときに動的なテキストボックスを作成してから、別のボタンをクリックして値を表示しています。私はajax updatepanelを使うまではうまく動作します。その場合、2番目のボタンを押すと値は表示されません。私のaspxコードは次のとおりです。動的なテキストボックスがupdatepanelで機能しない
ASPXマークアップは次のとおりです。
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div id="divRT" runat="server">
</div>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnAccessValues" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="lbnAddNew" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
<div>
<asp:Button ID="btnAccessValues" Text="save" runat="Server" OnClick="btnAccessValues_Click" />
<br />
<br />
</div>
コードの値を表示します。
Protected Sub btnAccessValues_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnAccessValues.Click
If ViewState(strVS_DynamicIds) IsNot Nothing Then
Dim lstDynId As List(Of String) = DirectCast(ViewState(strVS_DynamicIds), List(Of String))
For Each strId As String In lstDynId
Dim tbx As TextBox = DirectCast(divRT.FindControl(strId), TextBox)
Response.Write(tbx.Text)
Label1.Text = tbx.Text
Next
End If
End Sub
私は参照としてこの記事を使用しています:
http://www.c-sharpcorner.com/uploadfile/abhijeetsinghai/creating-textboxes-dynamically-at-runtime/
ソリューションを提案してください。あなたが戻って、各ポストのあなたの動的に追加したコントロールを再作成しなければならなかったしなければならない
よろしく、 アシフハミード
こんにちは、トリガーを削除しましたが、同じエラーです。ポストバック後にテキストボックスの値にアクセスすることはできません – DotnetSparrow
完全なコードを表示してください。私はすでにそのブログコードを実装しており、更新パネルでうまく動作しています –