c# - 2个按钮在同一位置。不同时间展示!

标签 c# asp.net html

是否可以将两个按钮放在 aspx 页面中的相同位置。根据某些条件,它必须显示其中之一。

<asp:ImageButton ID="btnapply" ImageUrl="../images/apply.gif" runat="server"
    ImageAlign="Right" OnClick="imgApply_Click" ValidationGroup="0" />
<asp:ImageButton ID="btnremove" ImageUrl="../images/remove.gif" runat="server"
    ImageAlign="Right" OnClick="imgremove_Click" ValidationGroup="0" />

最佳答案

选项 1:如果您可以在呈现页面时做出决定,即服务器端:

在您的代码隐藏中:

protected void Page_Load()
{
  if (variableToSwitchOn == true)
  {
    button1.Visible = true;
    button2.Visible = false;
  }
  else
  {
    button1.Visible = false;
    button2.Visible = true;
  }
}

在您的 .aspx 页面中:

<div>
  <asp:button runat="server" ID="button1" Text="Button 1" />
  <asp:button runat="server" ID="button2" Text="Button 2" />
</div>

选项 2:如果您需要在客户端做出决定

在您的 .aspx 页面中:

<div>
  <asp:button runat="server" ID="button1" Text="Button 1" />
  <asp:button runat="server" ID="button2" Text="Button 2" />
</div>
<script language="javascript" type="text/javascript">
    var button1Id = '<%=button1.ClientId%>';
    var button2Id = '<%=button2.ClientId%>';
</script>

您现在可以使用一段 javascript 来控制按钮是否可见,例如:

function ChangeWhichButtonIsVisible()
{
    var button1 = document.getElementById(button1Id);
    var button2 = document.getElementById(button2Id);
    if (someCondition == true)
    {
        button1.style.display = 'none';
        button2.style.display = 'block';   
    }
    else
    {
        button1.style.display = 'block';
        button2.style.display = 'none';   
    }
}

关于c# - 2个按钮在同一位置。不同时间展示!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3461154/

相关文章:

C# ThreadPool 应用程序性能随时间下降

asp.net - 将查询字符串添加到响应重定向 ASP VB.NET

完美对齐的 HTML 段落

c# - NAudio 正确传输 MediaFoundationReader 的方法

c# - 使用 JQuery 加载 iframe(正确方法)

c# - 为什么这个随机数生成器不是随机的?

html - 如何使用媒体查询定位特定像素宽度

asp.net - System.Web.Providers 的 OptimisticConcurrencyException

javascript - 如何在 javascript 中将文本分配给标签?

html - 通过响应式设计适应更大的屏幕