Je dois créer une série de boutons créés dynamiquement à l'intérieur d'un répéteur. Ces noms de boutons proviennent d'une base de données. Lorsqu'un utilisateur clique sur un bouton, un texte caché à côté du nom apparaît. Et disparaît quand on clique à nouveau. Le texte devra être soit défini dans le code html ou le code derrière.Accès aux éléments créés dynamiquement depuis l'intérieur d'un répéteur
Voici un code pour montrer ce que je pense.
<asp:Repeater ID="Repeater1" DataSourceID="DecisionDetailsDS" runat="server" >
<ItemTemplate>
<asp:Button ID="DecisionButton" runat="server" OnClick="BTN_ShowText" BorderStyle="None"
Text='<%# Eval("Decision_Type_Dsc") %>' />
<asp:Label ID="DecisionLabel" Visible="false" runat="server" />
<p></p>
</ItemTemplate>
<AlternatingItemTemplate>
<asp:Button ID="DecisionButton" runat="server" OnClick="BTN_ShowText" BorderStyle="None"
Text='<%# Eval("Decision_Type_Dsc") %>' />
<asp:Label ID="DecisionLabel" Visible="false" runat="server" /> <p></p>
</AlternatingItemTemplate>
</asp:Repeater>
public void BTN_ShowText(Object sender, EventArgs e)
{
Label TestLabel = (Label)FindControl("DecisionLabel");
Button TestButton = (Button)FindControl("DecisionButton");
switch(TestButton.Text)
{
case "Dismissed":
TestLabel.Text = "Testing 1 2 3";
break;
case "Anything":
TestLabel.Text = "Testing 2 3 4";
break;
}
if (TestLabel.Visible == false)
{
TestLabel.Visible = true;
}
else
{
TestLabel.Visible = false;
}
}
}
Je sais que cela ne fonctionne pas. Je reçois des nulls retournés. Alors que j'ai besoin de l'identifiant du bouton et de son étiquette correspondante. J'espère que cela vous donne une idée de ce que j'essaie de faire. Toutes les suggestions sont appréciées surtout si vous fournissez mon code pour travailler avec. Je pensais peut-être utiliser jquery?
Je suis nouveau à la programmation .net/jquery. J'espère que quelqu'un peut m'aider. Merci!
Cela a fonctionné parfaitement !! Très simple à implémenter avec mon code. Merci beaucoup! – Dave