我想知道是否有可能在后面的代码中选择特定的LinkButton。
我想要做的是当点击按钮时,按钮内的跨度应该改变类。我知道如果我在跨度上设置了ID,我可以更改它,但我想知道是否可以通过按钮作为发送者获得跨度。
按钮:
<asp:LinkButton ID="btnAttestMonday" runat="server" CssClass="btn btn-success btn-xs" OnClick="btnAttest_Click" CausesValidation="false"><span class="glyphicon glyphicon-ok" runat="server"></span></asp:LinkButton>
代码背后:
protected void btnChangeAttest_Click(object sender, EventArgs e)
{
LinkButton btn = (LinkButton)sender;
switch (btn.CommandName)
{
case "Attest":
updateAttestInDB(btn.CommandArgument.ToString(), true);
btn.CommandName = "RemoveAttest";
break;
case "RemoveAttest":
updateAttestInDB(btn.CommandArgument.ToString(), false);
btn.CommandName = "Attest";
break;
}
}
我希望跨度改变切换案例中的类。
提前致谢!
答案 0 :(得分:0)
将范围设为Label
并完成操作。然后,您只需要通过ID
访问它。但是,如果您不想要,可以通过LinkButton
访问它
Controls
- 系列:
protected void btnAttest_Click(object sender, EventArgs e)
{
LinkButton btn = (LinkButton)sender;
var span = (HtmlGenericControl) btn.Controls[0];
span.Attributes["class"] = "newCssClass";
// ...
}
当然,如果您将来更改布局,那么在运行时会失败。