我想增加&减少图像上的日期点击这样。 '<'减少和''增量并在文本框中显示它们。我尝试了下面的代码,但没有工作 请帮助我这样做
protected void ImageButtonNextDate_Click(object sender, ImageClickEventArgs e)
{
DateTime date = DateTime.Now;
DateTime nextday = date.AddDays(1);
txtDate.Text = nextday.ToShortDateString();
}
protected void ImageButtonPrevDate_Click(object sender, ImageClickEventArgs e)
{
DateTime date = DateTime.Now;
DateTime nextday = date.AddDays(-1);
txtDate.Text = nextday.ToShortDateString();
}
答案 0 :(得分:0)
每次处理图片上的点击事件时,都会创建一个新的date
变量,其值等于当前日期。您需要以某种方式在点击之间存储数据,以便为下一个事件保留数据。有多种方法可以实现,例如,会话变量:
protected void ImageButtonPrevDate_Click(object sender, ImageClickEventArgs e)
{
DateTime date = Session["MyDateVariable"] as DateTime ?? DateTime.Now;
DateTime nextday = date.AddDays(-1);
Session["MyDateVariable"] = nextday;
txtDate.Text = nextday.ToShortDateString();
}
答案 1 :(得分:0)
我认为您需要从txtDate
获取当前值,然后执行逻辑。
protected void ImageButtonNextDate_Click(object sender, ImageClickEventArgs e)
{
txtDate.Text = (Convert.ToDateTime(txtDate.Text).AddDays(1)).ToShortDateString();
}
protected void ImageButtonPrevDate_Click(object sender, ImageClickEventArgs e)
{
txtDate.Text = (Convert.ToDateTime(txtDate.Text).AddDays(-1)).ToShortDateString();
}
<强>更新强>
您只需在首页加载时将DateTime.Now
的值加载到txtDate
,在每个帖子上都不要设置它。
if(!IsPostBack()){
txtDate.Text = DateTime.Now.ToShortDateString();
}