关于下拉列表问题

Mirror然 2009-01-03 01:31:50
如题:比如用户申请的时间和结束时间 为 2008年1月 到2009年12月 则有8个季度
我想用一个下拉列表显示出8个季度出来 如果有4个季度 则下拉表只显示4条出来
在选择填写数据后 在判断如果填写了 下次进来的时候 就不把这个季度的列显示出来
如 填写了第一季度 则下次再填写的时候 就不显示第一季度的列出来了
高手们给个解决方法 JS和.NET都OK
...全文
63 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rail100 2009-01-03
  • 打赏
  • 举报
回复
同2楼,原理一样,代码没有
Mirror然 2009-01-03
  • 打赏
  • 举报
回复
楼上的貌似没达到 我前面说的,获得列表数据的问题,月份判断出来之后的显示下拉问题,开始时间也结束时间都是已经提交上来的数据 我想要的效果是:如果用户有4个季度 则dorpdownlist显示4条信息出来 如果是8条 则显示8条出来
fcxxfcxx 2009-01-03
  • 打赏
  • 举报
回复
学习
zpcoder 2009-01-03
  • 打赏
  • 举报
回复
    /// <summary>
/// start 是开始的时间,ddl 要填补到的控件ID
/// </summary>
/// <param name="start"></param>
/// <param name="ddl"></param>
void a(DateTime start,DropDownList ddl)
{
start=start.AddMonths(0 - (start.Month - 1) % 3).AddDays(1 - start.Day);
System.Collections.Generic.List<ListItem> lst = new System.Collections.Generic.List<ListItem>();

TimeSpan ts = DateTime.Today.Subtract(start);
while (ts.Days <= 0)
{
lst.Add(new ListItem(start.ToString("yyyy-MM"), start.ToString("yyyy-MM")));
start = start.AddMonths(3 - ((start.Month - 1) % 3));
}
ddl.Items.AddRange(lst.ToArray());
}

/// <summary>
/// “如果填写了的季度 下次进来的时候 就不把这个季度的列显示出来”
/// </summary>
/// <param name="ddl">控件ID</param>
/// <param name="quarters">已填写了的季度,多个之间用 , 分隔</param>
void b(DropDownList ddl, string quarters)
{
foreach (string s in quarters.Split(','))
{
ddl.Items.Remove(s);
}
}
别样苍茫 2009-01-03
  • 打赏
  • 举报
回复
申请时间 到当前时间的月数相差 计算没问题吧
然后除以3 就可以了 就是不包括这个月的季度数 至于你要写什么 直接加进去就OK了

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧