【问题标题】:ASP LinkButton onclick show divASP LinkBut​​ton onclick 显示 div
【发布时间】:2013-01-05 18:15:11
【问题描述】:

我是 Jquery 的新手,我试图在 LinkBut​​ton ClickEvent 上显示一个 div(如果我使用按钮而不是链接按钮,它将起作用)

这是我的 Jquery 代码

<script type="text/javascript">
            $(document).ready(function () {
                $('#<%=lbLog.ClientID%>').click(function () {

                    $("#login").show(2000);
                    alert("hello");
                });
            });
        </script>

hello 消息不是由 div 显示的

这是我的html代码:

<asp:LinkButton ID="lbLog" runat="server" onclick="lbLog_Click">Login</asp:LinkButton>
        <asp:Label ID="lblMessage" runat="server" Text=""></asp:Label>
        <div id="login" style="display:none">            
            Username: <asp:TextBox ID="txtUsername" runat="server"></asp:TextBox>
            <asp:RequiredFieldValidator ID="rfvUsername" runat="server" ControlToValidate="txtUsername" Display="Dynamic" ErrorMessage="*" ValidationGroup="LogGroup">*</asp:RequiredFieldValidator>
            Password: <asp:TextBox ID="txtPassword" runat="server" TextMode="Password"></asp:TextBox> <asp:RequiredFieldValidator ID="rfvPassword" runat="server" ControlToValidate="txtPassword" Display="Dynamic" ErrorMessage="*" ValidationGroup="LogGroup">*</asp:RequiredFieldValidator>
            <asp:Button ID="btnLog" runat="server" Text="Login" onclick="btnLog_Click" ValidationGroup="LogGroup" />
        </div>

【问题讨论】:

  • 在浏览器中检入你的html源代码,看看div上是否没有添加id。
  • 你能添加上面代码输出的html吗?在浏览器内的网页上查看源代码。

标签: c# jquery asp.net html linkbutton


【解决方案1】:

试试这个

$("#login").css('display','block');

【讨论】:

    【解决方案2】:

    由于style="display:none",无论您如何更改 jQuery 函数,ASP.NET 链接按钮都会导致回发刷新页面并隐藏 div。试试这个:

    <script type="text/javascript">
        $(document).ready(function () {
            $("#fakeLink").click(function () {
                $("#login").show(2000);
            });
        });
    </script>
    <style type="text/css">
        .fakeLink
        {
            color: blue;
            text-decoration: underline;
            cursor: pointer;
        }
    </style>
    
       <div>
        <span class="fakeLink" id="fakeLink">Login</span>
        <asp:Label ID="lblMessage" runat="server" Text=""></asp:Label>
        <div id="login" style="display:none;">
            Username:
            <asp:TextBox ID="txtUsername" runat="server"></asp:TextBox>
            <asp:RequiredFieldValidator ID="rfvUsername" runat="server" ControlToValidate="txtUsername"
                Display="Dynamic" ErrorMessage="*" ValidationGroup="LogGroup">*</asp:RequiredFieldValidator>
            Password:
            <asp:TextBox ID="txtPassword" runat="server" TextMode="Password"></asp:TextBox>
            <asp:RequiredFieldValidator ID="rfvPassword" runat="server" ControlToValidate="txtPassword"
                Display="Dynamic" ErrorMessage="*" ValidationGroup="LogGroup">*</asp:RequiredFieldValidator>
            <asp:Button ID="btnLog" runat="server" Text="Login" OnClick="btnLog_Click" ValidationGroup="LogGroup" />
        </div>
    </div>
    

    【讨论】:

    • 它工作了谢谢,但我需要将登录更改为注销,这就是为什么我尝试使用链接按钮,因为链接按钮更改是通过 c# 代码更改的
    【解决方案3】:

    您不需要onclick="lbLog_Click"。 ID 的 jquery 选择器看起来不正确 '#&lt;%=lbLog.ClientID%&gt;'。查看源代码并确保链接按钮上的 id 与您在 javascript 代码中传递给选择器的内容相匹配。

    【讨论】:

    • 这是错误的....如果是这样的话..他怎么会收到你好消息..我想知道..:)
    猜你喜欢
    • 2015-02-18
    • 1970-01-01
    • 2020-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    相关资源
    最近更新 更多