Dynamiczne ID obiektów

0

Cześć,

Mam funkcję, która dynamicznie tworzy mi tabele wraz z polami typu <labal> oraz <input>. Jak zrobić referencje, aby można było pobrać dane z tych pól i użyć ich w C# oraz jak nadać dynamicznie ID, jeśli to wymagane.

Z góry dzięki za pomoc

0

Co to za funkcja tworzy Ci tą tabelę? Najprawdopodobniej nadaje ona elementom HTML idetyfikatory. Dzięki nim możesz wyciągnąć wartości danych znaczników poprzez JavaScript. Możesz poszukać informacji o formularzach, tzn. znaczniku <form>.

0

Dodając atrybut runat="server" C# normalnie widzi taki label \ input, sęk w tym że kiedy jest ten element statyczny, nie dynamicznie stworzony (a przynajmniej nie umiem :( ).

0

Poniewaz tworzysz te obiekty dynamicznie to chcac sie do nich dobrac to musisz to samodzielnie obsluzyc (jesli znasz id to bodajze findControl powinno Ci pomoc). Mozesz tez podczas tworzenia zapisywac sobie te obiekty w jakiejsc kolekcji. Ogolnie bez kodu bedzie ciezko cos sensownego zasugerowac.

0

HTML

<asp:Literal id="ltrlctrl1" runat="server" />

C#

ltrlctrl1.Text = "<table class=\"table table-responsive\"><tr>";
ltrlctrl1.Text += "<th>Recipient</th>";
ltrlctrl1.Text += "<th>Address 1</th>";
ltrlctrl1.Text += "<th>Address 2</th>";
ltrlctrl1.Text += "</tr>";
for (int i = 0; i < Recipients.Items.Count; i++)
  {
     ltrlctrl1.Text += "<tr><td> <label runat=\"server\" id=\"Recipient" + (i + 1).ToString() + "\">" + Recipients.Items[i].Text + "</label></td><td><input type=\"text\" style=\"width:100%\" id=\"row1_" + (i + 1).ToString() + "\" value=\"" + ActiveDirectory.GetObjectProperty(UserLogin, "extensionAttribute1", "user") + "\"></td><td><input type=\"text\" style=\"width:100%\" id=\"row2_" + (i + 1).ToString() + "\" value=\"" + ActiveDirectory.GetObjectProperty(UserLogin, "extensionAttribute2", "user") + "\"></td></tr>";
  }
ltrlctrl1.Text += "</table>";

a odwołanie w C#

var Label1 = (Label)PlaceHolder1.FindControl("Recipient" + (i + 1).ToString());
var TextBox1 = (TextBox)PlaceHolder1.FindControl("row1_" + (i + 1).ToString());

1 użytkowników online, w tym zalogowanych: 0, gości: 1