如何使用c#在asp.net中隐藏和显示警报

问题描述 投票:0回答:1

因此,我有一个简单的asp.net应用程序,当单击按钮时,我想根据用户提交的内容为用户提供成功警报或错误警报。我被卡住的是,当我能够隐藏我的消息时,当单击asp:button时我无法使其显示。

这是我要隐藏的引导警报:

<div class="alert alert-success collapse" role="alert">
                        <a href="#" class ="close" data-dismiss="alert">&times;</a>
                        This is a success alert—check it out!</div>

这是我用来尝试调用它的C#代码:

Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", 
                    "<script>$(document).ready(function(){ $('.alert-success').show(); " +
                    "$('.alert-danger'); }); </script>");

找不到在线的C#代码,因此就此解决了。我所拥有的有什么问题,如何使它正常工作?

javascript c# css asp.net bootstrap-modal
1个回答
0
投票

您必须向按钮添加属性ClientIDMode,并在RegisterClientScriptBlock中扩展代码,以便将侦听器附加到按钮。

ClientIDMode

ClientID值设置为ID属性的值。如果 控件是一个命名容器,该控件用作顶部 容器包含的任何控件的命名容器的层次结构。

<asp:Button ID="button" runat="server" ClientIDMode="Static" Text="Button" />
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", 
                    @"<script>$(document).ready(function() {

  $('#button').click(function() {
    $('.alert-success').show();
  })

});</script>");

示例

$(document).ready(function() {

  $('#button').click(function() {
    $('.alert-success').show();
  })
  
});
.alert {
  display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
<div>
  <div class="alert alert-success alert-dismissible" role="alert">
    <a href="#" class="close" data-dismiss="alert">&times;</a> This is a success alert—check it out!</div>
<!--That would be asp:button-->
<button id="button">Show Alert</button>
</div>
© www.soinside.com 2019 - 2024. All rights reserved.