Hej! Hej Tyronne, Det är så här att jag håller på med en tävling där man skall ange 6 epostadresser. Jag vill kunna kontrollera om epostadresserna redan finns i tabellen och därför vill jag kunna loopa igenom de 6 textboxarna för att kunna ta ut vart värde i dem och kontrollera dem mot databasen innan nästa steg görs Detta skulle jag gjort med en CustomValidator istället, kolla gärna lite närmare på den kontrollen (kör valideringen server-side) jag har kollat på den och den verkar OK. Ligger dina textboxar direkt på forumläret eller tex i en tabell? I så fall ligger dom i tabellens "controls" Har inte testat, men det borde vara såhär: Hej, Enklast är att deklarera upp tabellen i din klass med följande kodLoopa igenom texboxar
Språk C#
jag har 6 textboxar med olika namn på mit formulär. Finns det något sätt där jag kan loopa igenom textboxarna och få ut deras värde. jag inbillar mig något som for each textbox ......
/TyronneSv: Loopa igenom texboxar
bara nyfiken, varför vill du loopa igenom dem? Skapas de dynamiskt?
I vilket fall funkar nedanstående kod som loopar igenom alla kontroller och ifall det är en TextBox så gör ngt.
<CODE>
foreach(Control ctrl in this.Controls)
{
if(ctrl is TextBox)
{
TextBox txt = (TextBox)ctrl;
// Do something with txt.Text
}
}
</CODE>
/MagnusSv:Loopa igenom texboxar
/tyronneSv: Loopa igenom texboxar
Sv:Loopa igenom texboxar
Men jag vill testa deta andra först och för det inte att fungera. Den borjar köra foreatch satsen men den verkar inte hitta någon textbox.
här är koden
<code>
foreach(Control ctrl in this.Controls )
{
if(ctrl is TextBox)
{
TextBox txt = (TextBox)ctrl;
bool CheckResults;
//KOntrollerar om epostaderssen har använts innan
CheckResults = Check_For_Duplicates(txt.Text);
if (CheckResults == true)
txt.BackColor = Color.FromArgb(205,205,209);
lblerror.Visible = true;
}
}
</code>
vad är fel?
/TyronneSv: Loopa igenom texboxar
Sv: Loopa igenom texboxar
foreach(Control ctrl in this.tebellens_namn.Controls)
/JohanSv: Loopa igenom texboxar
fel av mig, this.Controls funkar inte. Måste först få tag i HTML-formuläret som innehåller alla kontroller. Nedanstående fungerar.
<CODE>
foreach(Control ctrl in this.Controls)
{
if(ctrl is HtmlForm) // Get form element
{
foreach(Control sub_ctrl in ctrl.Controls) // loop through all controls in the form
{
if(sub_ctrl is TextBox) // Check if it is a checkbox
{
TextBox txt = (TextBox)sub_ctrl;
}
}
}
}
</CODE>
/MagnusSv: Loopa igenom texboxar
protected System.Web.UI.HtmlControls.HtmlTablemyTable myTable;
och sedan i koden myTable.Controls
Lägg märkte till att tabellen MÅSTE heta myTable i detta exempel