2

我想在 c# 中进行每次回发时显示除法 5 秒。我正在使用下面的函数来执行此操作,但它不起作用。

我在 c# 中的页面加载中使用了此代码。

Page.ClientScript.RegisterStartupScript(Page.GetType(), "PostbackClick", "setTimeout(function() { $('#correct').fadeOut(1500); }, 5000)", true);

在 aspx 页面中

<script type='text/javascript' src='Scripts/scripts/jquery.min.js'></script>
<script type="text/javascript">
    $(document).ready(function () {
        $('#correct').hide();

    });
</script>

<img alt="" id="correct" src="Que-img/correct.png" />
4

3 回答 3

1

利用

    RegisterClientScriptBlock(Page.GetType(), "PostbackClick", "$(document).ready(function(){
setTimeout(function() { $('#correct').fadeIn(1500); }, 5000)});", true)

因为您必须等待 JQuery.ready 才能使用 jquery 选择器。RegisterStartupScript 实际上发生在 jquery 准备好之前。在我的回答中,您的 setTimer 将在 jquery 就绪时执行

于 2013-10-18T06:11:45.293 回答
0

我想我有你的问题...修改你的代码如下

$(document).ready(function () {
     $('#correct').hide();
    $('#btnId').click(function(){
          $('#correct').show();
          setTimeout(function() { $('#correct').fadeOut(1500); }, 5000);
    });
});

并删除

Page.ClientScript.RegisterStartupScript(Page.GetType(), "PostbackClick", "setTimeout(function() { $('#correct').fadeOut(1500); }, 5000)", true);

这是演示

于 2013-10-18T06:44:17.180 回答
0

您已经将图像隐藏document.ready function

<script>
    $(document).ready(function () {
        //$('#correct').hide(); // remove this line or comment 
        // because fadeOut will work on visible elements

       function hideImage() {
           setTimeout(function() { $('#correct').fadeOut(1500); }, 5000);
       };
    });
</script>

C#中

Page.ClientScript.RegisterStartupScript(Page.GetType(),"PostbackClick", "script",
                                        "hideImage();" true);

如何从 C# 调用 Jquery将对您有所帮助

于 2013-10-18T06:15:45.760 回答