我在Form视图中有一个Span。我想在加载时调用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('&lt;%#Eval(”ModifiedOn“)%&gt;','Countdown_&lt;%#Eval(”ProductID“)%&gt;');”&gt; 但是没有工作
答案 0 :(得分:1)
我可能会尝试这样的东西,而不是onload属性。
将您的范围行更改为:
<span id='Countdown_<%#Eval("ProductID") %>' modified='<%#Eval("ModifiedOn")%>' />
并尝试这个jQuery(未经测试):
$(document).ready(function() {
$("span[id*=Countdown_]").each( function() {
var id = $(this).attr("id");
var modified = $(this).attr("modified");
GetTimeOnLoad(modified, id);
});
});
答案 1 :(得分:0)
onLoad事件永远不会被span标记触发。您可以在$(document).ready();
中触发方法的执行 $(document).ready(function() {
//put your call here...
});