簡體   English   中英

jQuery和ASP.NET頁面加載

[英]jQuery and ASP.NET Page load

我使用Webcontrols測試jQuery和ASP.NET,並且在我的測試中,如果我點擊Button,每次都會加載Side。 jQuery代碼將Css類添加到Label。

我的aspx:

      <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Main.aspx.cs" Inherits="jQueryAnwendung.Main" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>jQuery Anwendung</title>

    <script src="Scripte/jquery-1.8.0.min.js" type="text/javascript"></script>

    <style type="text/css">
        .CssKlasse 
        {
            background:red;
            font-size:40px; 
            }
    </style>

    <script type="text/javascript" language="javascript">

        $(document).ready(function () {
            $("#<%= b1.ClientID%>").click(function (event) {
                $("#<%= bild1.ClientID %>").slideToggle('slow');
            });

        });

    </script>

</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="b1" runat="server" text="Bild verkleinern/vergrößern"/>
        <asp:Image ID="bild1" runat="server" ImageUrl="~/Theme/net.png" Width="50" Height="50" /> 
    </div>
    </form>
</body>
</html>

我能做什么?

塔拉索夫

生成的id更詳細; 打開瀏覽器並單擊“ 查看源” 你會注意到它。 將ID復制並粘貼到jQuery選擇器中。

另一種方法是在.aspx$("<%= b1.ClientID %>")調用b1.clientID ,它將在運行時輸出生成的clientID

從ASP.NET 4開始, StaticMode允許您完全控制生成的ID。 有關更多信息,請查看: http//msdn.microsoft.com/en-us/library/system.web.ui.control.clientid.aspx

如果您使用asp控件,您有兩種方法來處理它

首先是在你的jQuery函數"<%= #l1.ClientID %>" "#b1"#l1"更改為"<%= #b1.ClientID%>""<%= #l1.ClientID %>"

其次是將屬性ClientIDMode="Static"添加到asp:Buttonasp:Label

單擊它時Asp按鈕會導致Post返回 - 頁面重新加載並且您的腳本未執行,您可以使用HTML按鈕或嘗試禁用此按鈕上的回發。

在處理程序內部,阻止按鈕正常運行:

$("#<%= b1.ClientID%>").click(function (event) {
  event.preventDefault(); //prevent the control to act in its default way
  $("#<%= bild1.ClientID %>").slideToggle('slow');
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM