1

私は完全に動的なウェブサイトを書いています。すべてのコントロールが Response.write によって作成されていることを意味します。問題はありません。ページの読み込み後、コードビハインドで動的に作成されたテキストボックスの値を取得したいのですが、 Request.Form によって受信されません。ここに私のコードがあります:

Private Function userconf() As string
    Dim script As String

    Dim conString As String = ConfigurationManager.ConnectionStrings("sqlexpress").ConnectionString
    Using con As New System.Data.SqlClient.SqlConnection(conString)

        Dim com As New SqlCommand("SELECT * FROM clientamount WHERE Mode <> 1 ", con)


        con.Open()

        Dim resultid As String
        Dim reader As SqlDataReader = com.ExecuteReader()
        Try
            While reader.Read()

                RenderBuyForm = RenderBuyForm + "<div><input id='tx" & reader("ID") & "' type='text'  />" & reader("avrageamountunit") & "<input id='txd" & reader("ID") & "' type='text'/>"
            End While
        Finally

            reader.Close()
        End Try


    End Using


    Return RenderBuyForm
End Function

そして、この関数は page_preload イベントでロードされます:

   Protected Sub Page_PreLoad(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreLoad
    userconf()


    End If
End Sub

また、私が持っているhtmlページでも

<form id="form1" runat="server">
   <%=RenderBuyForm%>

    <asp:Button ID="Button1" runat="server" Text="Button" />
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

    </form>

少なくとも私はテキストボックスの値を読み込もうとしていますが、今は Button1_Click イベントで HTML ページにあります:

 Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click



    For Each row As DataRow In tabel1.Rows

        Dim a As String = Request.Form("tx" & tabel1.Rows(0)("ID") & "")

      label1.text = a 


    Next
End Sub

しかし、 a は Nothing を返します。この問題で私を助けてもらえますか? コードビハインドでクライアント側からこれらのテキストボックスの値を読み取るにはどうすればよいですか?

4

1 に答える 1