将文本从动态文本框插入数据库

时间:2014-07-10 10:47:41

标签: asp.net

我使用以下代码创建了一个文本框控件数组,其中在从组合框中选择的值的基础上生成了no.of控件

Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged

        Dim lstTextBox = New List(Of TextBox)()

        For i As Integer = 0 To DropDownList1.SelectedValue
          for j as integer =0 to 3
            Dim txtbx As New TextBox()
            txtbx.ID = String.Format("txtbx{0}", j)
            lstTextBox.Add(txtbx)
            txtbx.Text = "sample text " & j
            form1.Controls.Add(txtbx)
           next
        Next
        Session("lstTextBox") = lstTextBox
        End Sub

现在我需要在单击按钮时将值插入数据库,此处代码为

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click 
     dim mysql as string 
     mysql="insert into mytable values("
        Dim lstText = New List(Of TextBox)()
        lstText = Session("lstTextBox")
        For i As Integer = 0 To lstText.Count - 1
         for j as integer =0 to 3            
          mysql= mysql & "'" & trim(lstText(j).Text) & "',"
         next

'使用mysql字符串为每一行执行insert             下一个         结束子

现在问题是:只有文本框中的初始值插入到数据库中,我在文本框中所做的更改不会插入到数据库中。即,在会话中,文本框中的文本更改初始值不会更改。

我需要一个解决这个问题的方法来继续我的工作。如此专业的关注请...积极的回应将不胜感激。

1 个答案:

答案 0 :(得分:0)

我不确定VB和My Sql。但我可以给你一些摆脱Session

的方法

在DropDownList1_SelectedIndexChanged,

中尝试这样
if(Session("lstTextBox"))==null
   Session("lstTextBox") = lstTextBox
 else
     Session.Abandon()
     Session("lstTextBox") = lstTextBox

现在你可以检查会话是否正在更新。除了你可以得到你想要的结果。请让我知道输出。