2017-04-08 122 views
0

嗨,我無法獲取動態創建的值文本框並保存到數據庫中。 plz幫助 他是我在代碼文本此框中創建創建代碼,但是當我將輸入文本和值從動態創建的文本框中輸入檢索值它給錯誤如何從動態創建的文本框在asp.net中獲取價值

protected void btnAtt_Click(object sender, EventArgs e) 
    { 
     int DPLID = int.Parse(DPLCategory.Text); 
     var query = (from p in database.tbl_Attributes 
        where p.ProductTypeId_FK == DPLID 
        select new 
        { 
         p.Attribute_Id, 
         p.AttributeName, 
         p.ProductTypeId_FK, 

        }).ToArray(); 
     for (int i = 0; i < query.Count(); i++) 
     { 
      Label lblatt = new Label(); 
      lblatt.ID = query[i].AttributeName; 
      lblatt.Text = query[i].AttributeName + " : "; 
      lblatt.CssClass = "control-label"; 
      TextBox txtatt = new TextBox(); 
      txtatt.ID = "txtatt"+i; 
      txtatt.Attributes.Add("runat", "server"); 
      txtatt.Text = String.Empty; 
      txtatt.CssClass = "form-control input-sm"; 
      HtmlTextWriterTag.Br.ToString(); 
      Place1.Controls.Add(lblatt); 
      HtmlTextWriterTag.Br.ToString(); 
      Place1.Controls.Add(txtatt); 
      HtmlTextWriterTag.Br.ToString(); 
     } 
    } 




protected void lbtnSave_Click(object sender, EventArgs e) 
    { 
     int DPLID = int.Parse(DPLCategory.Text); 
     var query = (from p in database.tbl_Attributes 
        where p.ProductTypeId_FK == DPLID 
        select new 
        { 
         p.Attribute_Id, 
         p.AttributeName, 
         p.ProductTypeId_FK, 

        }).ToArray(); 


      int LastId = database.tbl_Products.Max(p => p.ProductId); 

      for (int i = 0; i < query.Count(); i++) 
      { 

       database.tbl_ProductValue.Add(new Models.tbl_ProductValue() 
        { 
         ProductId_FK = LastId, 
         AttributeID_FK = query[i].Attribute_Id, 
         ProductValue = ??, 
        }); 
        database.SaveChanges(); 

      } 


     } 

plz幫助我如何獲得文本框?

回答

0

我還沒有在一段時間與WebForms的工作,但你可以通過它們的ID這樣的訪問控制:

ProductValue = ((TextBox)FindControl("txtatt" + i)).Text; 
+0

不工作,但使用此代碼並且正在'VAR control1Value =的Request.Form [」 txtatt「+ i];' –

相關問題