我写了一个用户控件,页面调用多次,但是总是只能正常显示第一个,帮我找找一下错误.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication7.WebForm1" %>
<%@ Register src="re_Seckill.ascx" tagname="re_Seckill" tagprefix="uc1" %>
<!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></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<div><uc1:re_Seckill ID="re_Seckill1" runat="server" StartSeckill="2012-09-29 23:05:12" EndSeckill="2012-09-29 23:12:32" /></div>
<div><uc1:re_Seckill ID="re_Seckill2" runat="server" StartSeckill="2012-09-29 23:05:12" EndSeckill="2012-09-29 23:12:32" /></div>
</div>
</form>
</body>
</html>
re_Seckill.ascx:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="re_Seckill.ascx.cs" Inherits="WebApplication7.re_Seckill" %>
<style type="text/css">
.style1
{
color:#FF0000;
font-weight:bold;
padding-left:7px;
padding-right:7px;
}
</style>
<script language="JavaScript" type="text/javascript">
function showTimeLimit(str, end, i) {
var now = new Date(str);
var future = new Date();
future -= 1000;
if (now - future > 0) {
var days = (now - future) / 1000 / 60 / 60 / 24;
var dayNum = Math.floor(days);
var hours = (now - future) / 1000 / 60 / 60 - (24 * dayNum);
var houNum = Math.floor(hours);
if (houNum < 10) {
houNum = "0" + houNum;
}
var minutes = (now - future) / 1000 / 60 - (24 * 60 * dayNum) - (60 * houNum);
var minNum = Math.floor(minutes);
if (minNum < 10) {
minNum = "0" + minNum;
}
var seconds = (now - future) / 1000 - (24 * 60 * 60 * dayNum) - (60 * 60 * houNum) - (60 * minNum);
var secNum = Math.floor(seconds);
if (secNum < 10) {
secNum = "0" + secNum;
}
document.getElementsByName('TimeLimit1')[i].innerHTML = "距秒杀开始还有:<span class=\"style1\">" + dayNum + "</span>天<span class=\"style1\">" + houNum + "</span>小时<span class=\"style1\">" + minNum + "</span>分<span class=\"style1\">" + secNum + "</span>秒";
}
else {
// setInterval('showTimeLimit(\"2012/09/29 09:11:50\",\"0\")', 1000);
var now = new Date(end);
var future = new Date();
future -= 1000;
if (now - future > 0) {
var days = (now - future) / 1000 / 60 / 60 / 24;
var dayNum = Math.floor(days);
var hours = (now - future) / 1000 / 60 / 60 - (24 * dayNum);
var houNum = Math.floor(hours);
if (houNum < 10) {
houNum = "0" + houNum;
}
var minutes = (now - future) / 1000 / 60 - (24 * 60 * dayNum) - (60 * houNum);
var minNum = Math.floor(minutes);
if (minNum < 10) {
minNum = "0" + minNum;
}
var seconds = (now - future) / 1000 - (24 * 60 * 60 * dayNum) - (60 * 60 * houNum) - (60 * minNum);
var secNum = Math.floor(seconds);
if (secNum < 10) {
secNum = "0" + secNum;
}
document.getElementsByName('TimeLimit1')[i].innerHTML = "距秒杀结束还有:<span class=\"style1\">" + dayNum + "</span>天<span class=\"style1\">" + houNum + "</span>小时<span class=\"style1\">" + minNum + "</span>分<span class=\"style1\">" + secNum + "</span>秒";
}
else {
document.getElementsByName('TimeLimit1')[i].innerHTML = "<span clas=\"style1\">秒杀已结束</span>";
}
}
}
</script>
<span id="TimeLimit1" name="TimeLimit1">请稍等,正在载入中。。。</span>
<asp:Literal runat="server" ID="lblTime1"></asp:Literal>
re_Seckill.ascx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication7
{
public partial class re_Seckill : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
this.lblTime1.Text = "<script language=\"javascript\" type=\"text/javascript\">setInterval('showTimeLimit(\"" + StartSeckill + "\",\"" + EndSeckill + "\",\"0\")', 1000);</script>";
}
public DateTime StartSeckill
{
get
{
EnsureChildControls();
return (DateTime)(ViewState["start time"] ?? DateTime.Now);
}
set
{
EnsureChildControls();
ViewState["start time"] = value;
}
}
public DateTime EndSeckill
{
get
{
EnsureChildControls();
return (DateTime)(ViewState["end time"] ?? DateTime.Now);
}
set
{
EnsureChildControls();
ViewState["end time"] = value;
}
}
}
}
相关推荐
园区管理如何通过数据分析提升招商效率与运营质量?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
央企如何利用数据分析工具优化科技研发方向与产业布局?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
基于ADMM应用于水蜜桃采摘配送联合优化问题研究(Matlab代码实现)
内容概要:本文研究了基于交替方向乘子法(ADMM)的水蜜桃采摘与配送联合优化问题,并提供了完整的Matlab代码实现。通过构建整合农业生产中采摘任务分配与物流配送路径规划的数学模型,采用ADMM算法进行分布式求解,显著提升了计算效率与问题扩展性。文中系统阐述了问题建模过程、目标函数与约束条件的设计、ADMM算法的迭代求解机制,并通过仿真实验验证了该方法在降低整体运营成本与提升供应链响应速度方面的有效性,为智慧农业背景下的农产品供应链一体化优化提供了理论支持与实践范例。; 适合人群:具备一定运筹优化、农业工程或物流管理基础知识,熟悉Matlab编程的高校研究生、科研人员及农业科技企业技术人员。; 使用场景及目标:①应用于智慧农业场景下的作物采摘与冷链物流联合调度;②作为学习ADMM算法在分布式优化中应用的教学案例;③为解决类似农产品供应链优化问题提供模型与代码参考; 阅读建议:建议读者结合提供的Matlab代码逐模块阅读,重点关注问题建模与ADMM算法实现部分,可通过修改参数或测试不同规模案例来加深理解,并尝试将其拓展至其他农作物或更复杂的供应链网络中。
新能源纯电动汽车驾驶员模块、整车控制器、减速器模块、车速模块等建模Simulink仿真模型
内容概要:本文详细介绍了一个基于Simulink的新能源纯电动汽车仿真模型,重点涵盖了驾驶员模块、整车控制器、减速器模块和车速模块等核心部件的建模与仿真。该模型采用模块化设计理念,实现了对电动汽车动力传动系统与整车控制逻辑的高精度模拟,可用于车辆动力学分析、控制策略验证及系统性能评估。模型紧密结合工程实际需求,构建了完整的仿真框架,支持在不同驾驶工况(如加速、减速、爬坡等)下测试车辆动态响应,有效提升了整车控制系统的设计效率与可靠性,具有较强的工程应用价值。; 适合人群:具备一定车辆工程或自动化背景,从事新能源汽车控制、系统仿真或机电一体化研究的研发人员及高校研究生。; 使用场景及目标:①用于新能源汽车整车控制策略的开发与验证;②支持动力系统匹配分析与性能优化;③适用于教学演示、科研项目及工程原型开发中的动态仿真需求。; 阅读建议:建议使用者熟悉Simulink基本操作与车辆动力学基础知识,结合实际控制需求逐步调试各模块参数,并通过典型工况(如加速、减速、爬坡)验证模型的有效性与稳定性。
技术转移机构如何精准定位潜在技术需求,拓展服务范围?.docx
技术转移机构如何精准定位潜在技术需求,拓展服务范围?


