如何在按下按钮后在JQuery / ASP.NET中创建淡入淡出标签

我认为这应该很简单,但我不太确定如何连线。

我有一个用户可以定义查询的页面。 完成后,用户输入查询的名称并按下按钮。 我想处理按钮单击,使文本标签(或跨度)可见几秒钟然后淡出。

由于它是一个回发,我可以将ASP:Label控件变为可见 – 这很容易。 现在,如何让jquery让标签在几秒钟后消失? 从更广泛的意义上讲,如何获得回发来触发jquery方法?

最简单的解决方案的奖金!

将asp标签文本作为空启动。

 

然后,您可以在每次加载页面时淡出标签,并在按下按钮后设置asp标签的文本。

 Protected Sub btn_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn.Click myLabel.Text = "You hit the button" End Sub $(document).ready(function() { $('#myLabel').fadeOut(3000, function() { $(this).html(""); //reset the label after fadeout }); }); 

这是一种低技术技术,可以将所有脚本保存在页面模板中:将$(document).ready()函数添加到基于页面级变量有条件执行的页面中,如下所示…

 // In your button's click handler, set this.UserHasClicked to true var userHasClicked = '<%= this.UserHasClicked %>' == 'True'; $(document).ready(function() { if(userHasClicked) { $(labelSelector).delay(2000).fadeOut(1000); } }); 

调用ClientScriptManager.RegisterClientScriptBlock

这样的东西……

 var buttonFade = function() { $('#my .label .selector').fadeOut(2000); } setTimeout(buttonFade, 2000); 

如果您发布了一些标记,我还可以尝试将setTimeout()放入标签出现时触发的函数中。