单击按钮时显示 div Javascript

Posted

技术标签:

【中文标题】单击按钮时显示 div Javascript【英文标题】:Displaying a div when button is clicked Javascript 【发布时间】:2021-12-03 13:37:01 【问题描述】:

我的目标是在单击“保存”按钮时显示带有成功消息的 div。 不幸的是,我所做的只是在每次加载页面时显示此消息..

这是我的代码:

<div id="fadeDiv">
    <p>Content saved !</p>
</div>

$(document).ready(function () 
    $('#fadeDiv').fadeIn(1000);
    setTimeout(function ()  $('#fadeDiv').fadeOut(1000); , 1000);
);

我试过了

$('#saveBtn").click(...);

但是当我点击按钮时,即使我没有 Response.Redirect() 页面也会重新加载,因此我的 div 不会显示。

感谢您的帮助

【问题讨论】:

你能给我们看看你的saveBtn的html吗?还有$('#saveBtn").click(...) dosnt 工作。应该是这样的:$('#saveBtn").on('click',[function]) 你的保存按钮类型=“提交”吗?如果是这样,你应该防止默认它 @JonasWeinhardt .click() 方法适用于静态内容。不过,查看 HTML 会有所帮助,特别是如果 buttonform 内时 @Rory McCrossan 哦,我不知道。感谢您指出:D @JonasWeinhardt 这是我的按钮的 html:&lt;asp:Button ID="btnEnregistre" runat="server" CssClass="btn btn-success-reverse" Text="Enregistrer" OnClick="btnEnregistre_Click" CausesValidation="true" ValidationGroup="form" /&gt; 【参考方案1】:

此解决方案在开头隐藏按钮。

$("#saveBtn").click(function () 
    $('#fadeDiv').fadeIn(1000);
    setTimeout(function ()  $('#fadeDiv').fadeOut(1000); , 1000);
);
<div id="fadeDiv" style="display:none">
    <p>Content saved !</p>
</div>

<button id="saveBtn">
Save!
</button>

【讨论】:

这是假设按钮不在 form 中 - 这很可能是因为 OP 状态单击按钮会导致页面传输/重新加载 感谢您的回答,但它仍然对我不起作用...我尝试在其中放置一个简单的 alert() 但没有显示任何内容。 $('#btnEnregistre').click(function () alert('ALERT'); );【参考方案2】:

请参考以下链接并尝试使用您自己的。

Click here

如果您需要任何帮助,请告诉我。

【讨论】:

【参考方案3】:

为了重新创建您想要做的事情,我创建了一个带有隐藏 div 的 HTML,成功保存后,该消息将显示在带有红色边框的 div 中。请注意,按钮在 div 之外。

其次,我创建了一个简单的 javascript 函数,用于触发 div 的显示并隐藏保存按钮。

function ShowHideDiv() 
    //show div when button is clicked               
    document.getElementById("myDiv").style.display = "block";
    //hide save button after click
    document.getElementById("saveButton").style.display = "none";
                                    
    
<div id="myDiv" style="display: none; border-style: solid; border-width:thick; border-color:red;">
 <p> Hey..!! <br><br>Your Content saved!! :)</p>
</div>
<button onclick="ShowHideDiv()" id = "saveButton">Save Button</button>

我希望这是你想要达到的目标。

干杯!

【讨论】:

【参考方案4】:

感谢大家的快速回答! 我设法做到了!

所以我把我的按钮放在一个 asp UpdatePanel 中以避免当它被点击时,页面被重新加载。之后,我在单击按钮时调用的 C# 函数中添加了一个 RegisterStartupScript。最后,RegisterStartupScript 只是调用管理我的消息显示的 Javascript 函数。

代码如下:

HTML

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:Button ID="saveBtn" runat="server" Text="Save" OnClick="saveBtn_Click"/>
    </ContentTemplate>
</asp:UpdatePanel>
<div id="fadeDiv" style="display: none">
    <p id="saveMsg">Content saved</p>
</div>

C#

protected void saveBtn_Click(object sender, EventArgs e)

    // ...
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "call", "displaySaveMsg();", true);

Javascript

function displaySaveMsg() 
    $('#fadeDiv').fadeIn(1000);
    setTimeout(function ()  $('#fadeDiv').fadeOut(1000); , 1000);

【讨论】:

【参考方案5】:

您的问题有解决方案 1.这是我们的html

    <div id="fadeDiv">
      <p>Content saved !</p>
    </div>
   <button id="saveBtn">Show</button>

2.jQuery代码

$(document).ready(function()
     $("#fadeDiv").hide();
      $("#saveBtn").click(function()
        $("#fadeDiv").show();
      );
    );

问题解决方案的说明。 1.html结构和你的一样,解决办法在jquery代码里面。

A.这一行 $("#fadeDiv").hide();当我们第一次到达页面时隐藏 div。

B.当我们单击保存按钮时,此代码将运行 $("#saveBtn").click(function()

);.

C.最后一件事,这一行 $("#fadeDiv").show();将显示隐藏的 div。

【讨论】:

以上是关于单击按钮时显示 div Javascript的主要内容,如果未能解决你的问题,请参考以下文章

单击按钮时显示警报

从单选按钮输入单击时显示模式

如何在多次单击时显示按钮的逗号分隔值

如何在按下按钮的同时选择两个下拉选项时显示隐藏div

单击时显示/隐藏 div 并在单击 div 外部后消失

[在单击链接时显示div类