2013-01-05 69 views
0

我是新的jQuery和IM試圖顯示在LinkBut​​ton的ClickEvent一個div(如果我使用一個按鈕,而不是一個LinkBut​​ton,將工作)ASP的LinkBut​​ton的onclick秀格

這是我的jQuery代碼

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

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

是不是DIV

顯示Hello消息,這是我的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> 
+0

在瀏覽器中檢查你的html源代碼,看看div上沒有添加id。 –

+0

你可以添加從上面的代碼輸出的HTML?查看瀏覽器內網頁上的源代碼。 –

回答

0

無論您如何更改jQuery函數,ASP.NET鏈接按鈕都會導致回發,刷新頁面並隱藏div,感謝style="display:none"。試試這個:

<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> 
+0

它的工作謝謝你,但我需要更改登錄到註銷,這就是爲什麼我嘗試使用鏈接按鈕,因爲鏈接按鈕更改通過C#代碼更改 – Eliza

1

試試這個

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

不,它不起作用 – Eliza

0

你不需要onclick="lbLog_Click"。 ID的jquery選擇器看起來不正確'#<%=lbLog.ClientID%>'。查看源代碼並確保linkbutton上的id與您在javascript代碼中傳遞給選擇器的內容匹配。

+0

這是錯誤的....如果是這樣的話......那麼他將如何得到一個hello消息..我不知道.. :) – bipen

+0

是的IDs匹配 – Eliza

相關問題