如何在asp.net按钮上应用javascript点击?

时间:2015-04-01 02:12:07

标签: javascript asp.net twitter-bootstrap

我正在使用bootstrap alert autocloseable msg。代码如下

<div id="alertdiv" class="alert">
    <a class="close" data-dismiss="alert">×</a><span>' + message + '</span></div>

Asp.net按钮点击代码

<div>
 <asp:Button ID="btnLogin" runat="server" Text="Login" CssClass="btn btn-block org" Style="margin-top: 0px" OnClick="btnLogin_Click" ValidationGroup="Login" OnClientClick="msg();" />
</div>

Javascript代码如下。 javascript写的是正确的吗?请检查一下!

<script type="text/javascript">

    $(document).ready(function () {
        function msg() {
            window.setTimeout(function () {
                $(".alert").fadeTo(1500, 0).slideUp(500, function () {
                    $(this).remove();
                });
            }, 5000);
        }
    });

</script>

2 个答案:

答案 0 :(得分:0)

function msg() {
    window.setTimeout(function () {
        $(".alert").fadeTo(1500, 0).slideUp(500, function () {
            $(this).remove();
        });
    }, 5000);
}

你正在准备你的功能。在它之外声明它。

$(document).ready(...);基本上说“当我的文档完成渲染时,运行代码。”你不想这样做,你只想声明你的函数在OnClientClick中使用。如果您将msg()移出.ready(),它应该有效。

此外,ASP.NET控件呈现为常规html。如果我没有弄错的话,我相信<asp:button>会呈现为常规按钮。您可以像这样使用委托事件处理程序:

$('#' + '<%= btnLogin.ClientID %>').on('click', function() {
    msg();
});

答案 1 :(得分:0)

我希望这可以提供一些帮助。我必须承认,你想要实现的目标对我来说并不清楚。

<script type="text/javascript">
     myClosure=function() {
        var canyousee = "here I'm ";
        return (function () {
            return { canyouseeIt: function(){return confirm (canyousee)}};
        });
    }
</script>


<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="(myClosure())().canyouseeIt()" />