asp.net
  • jquery
  • 2010-04-23 106 views 1 likes 
    1

    我在窗體視圖中有一個跨度。我想在加載時調用jQuery函數,我該怎麼做?如何在窗體視圖(asp.net控件)內調用jQuery函數?

    這是我的代碼:

    <asp:FormView ID="FormView1" runat="server" OnItemCommand="FormView1_ItemCommand"> 
          <ItemTemplate> 
           <asp:HiddenField ID="hidProductID" Value='<%#Eval("ProductID") %>' runat="server" /> 
           <asp:HiddenField ID="hidCustomerID" Value='<%#Eval("CustomerID") %>' runat="server" /> 
           <a href='<%=WinToSave.SettingsConstants.SiteURL%>WintoSave/AuctionProduct.aspx?id=<%#Eval("ProductID") %>'> 
            <%#Eval("ProductName")%> 
           </a> 
           <br /> 
           <img src='<%#Eval("ImagePath")%>' alt="Image No available" /> 
           <br /> 
           <asp:Label ID="lblTime" runat="server" Text='<%#Convert.ToDateTime(Eval("ModifiedOn")).ToString("hh:mm:ss") %>'></asp:Label> 
    
           <span id='Countdown_<%#Eval("ProductID") %>' onload="GetTimeOnLoad('<%#Eval("ModifiedOn")%>','Countdown_<%#Eval("ProductID") %>');"></span> 
           <br /> 
           <asp:Label ID="lblFinalPrice" runat="server" Text='<%#Convert.ToDouble(Eval("FinalPrice")).ToString("#.00")%>'></asp:Label> 
           <br /> 
           <asp:Label ID="lblFullName" runat="server" Text='<%#Eval("FullName") %>'></asp:Label> 
           <br /> 
           <asp:Button ID="btnAddbid" Text="Bid" CommandName="AddBid" CommandArgument='<%#Eval("ID")%>' 
            runat="server" /> 
          </ItemTemplate> 
         </asp:FormView> 
    

    和下面是我的jquery代碼

    function GetTimeOnLoad(shortly,DivID) 
        { 
        var dt = new Date(shortly); 
        alert(dt); 
        alert(shortly); 
        alert(DivID); 
        var ProductDivID = "#" +DivID; 
        alert(ProductDivID); 
        $(ProductDivID).countdown({ 
          until: dt, onExpiry: liftOff, onTick: watchCountdown, 
          format: 'HMS', layout: '{hnn}{sep}{mnn}{sep}{snn}' 
         }); 
        } 
        function liftOff(){}; 
        function watchCountdown(){}; 
    

    在上述代碼中,我使用的 '的onload =「GetTimeOnLoad( '<%#Eval(「ModifiedO n「)%>','Countdown_ <%#Eval(」ProductID「)%>');」> 但不起作用

    +0

    你使用Firefox和螢火蟲裝BRO:

    更改您的跨線:

    <span id='Countdown_<%#Eval("ProductID") %>' modified='<%#Eval("ModifiedOn")%>' /> 

    ,並嘗試這個jQuery(未測試)。第一件事,我會檢查將語法或任何其他類型的錯誤.... – melaos 2010-04-23 09:39:56

    回答

    1

    我也許會嘗試像這樣的東西,而不是onload屬性。我希望

    $(document).ready(function() { 
        $("span[id*=Countdown_]").each(function() { 
        var id = $(this).attr("id"); 
        var modified = $(this).attr("modified"); 
    
        GetTimeOnLoad(modified, id); 
        }); 
    }); 
    
    +0

    Thnaks Mikael它工作良好 – 2010-04-23 09:57:54

    0

    onLoad事件永遠不會被span標記觸發。你可以在$(document).ready()中觸發你的方法的執行。

    $(document).ready(function() { 
         //put your call here... 
        }); 
    
    +0

    我從FromView(asp.net控制)獲取值並傳遞到該方法。因爲數據來自服務器非常相同的數據我用作我的Jquery Funciton中的參數 – 2010-04-23 09:48:53

    相關問題