根据当前时间显示下拉列表的年月,需要显示之前六个月,用JS怎么来弄?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据当前时间显示下拉列表的年月,需要显示之前六个月,用JS怎么来弄?相关的知识,希望对你有一定的参考价值。
参考技术A html代码:<select id="dateSelect">
</select>
js代码:
<script type="text/javascript">
//格式化日期函数
function formateDate(date)
if(date instanceof Date)
return date.getFullYear() + "年" + (date.getMonth() + 1) + "月";
else
return "Error Date";
//页面加载完成后,执行初始化操作
window.onload = function()
//当前日期
var date = new Date();
//获取select元素
var dateSelectObj = document.getElementById("dateSelect");
for(var i = 0;i <= 6; i++)
//创建option子元素
var optionElement = document.createElement("option");
optionElement.appendChild(document.createTextNode(formateDate(date)));
dateSelectObj.appendChild(optionElement);
//日期减一个月
date.setMonth(date.getMonth() - 1);
;
</script>
如何在 QTableView 的列中显示下拉列表并根据下拉列表进行过滤
【中文标题】如何在 QTableView 的列中显示下拉列表并根据下拉列表进行过滤【英文标题】:How to display drop-down in column of QTableView and filter based on drop-down 【发布时间】:2011-07-04 12:04:04 【问题描述】:我是 Qt 的新手。我必须在QTableView
中显示一大块数据并按列过滤。为此,我使用了QSortFilterProxyModel
,但根据要求,QTableView
的每一列都应该有一个下拉列表,显示该列中的唯一值。在下拉列表中选择这些值中的任何一个时,只有在列中具有该特定值的行才会显示在 QTableView
中(就像在 Excel 中一样)。
我将如何实现这个?
【问题讨论】:
虽然它是用于旋转框,而不是组合框,但标准 Qt 示例 spinboxdelegate 展示了如何创建QItemDelegate
子类来做你想做的事。
【参考方案1】:
一周前我遇到了同样的问题 我找到了一个教程,解释了如何做到这一点。见下面的链接 http://programmingexamples.net/wiki/Qt/Delegates/ComboBoxDelegate
现在我的问题是如何检索特定组合框的值。 我认为在 C++ 和 Qt 中将组合框显示到 tableView 中是一件如此复杂的事情。 作为一名网络开发人员,我可以说网络语言更适合做这些事情。
但是性能仍然需要一些时间,我尝试在 C++ 中使用 Qt 来实现,但这并不像在 Web 语言中那样容易。
【讨论】:
【参考方案2】:这是一个非常笼统的问题,如果我试图解释它会占用页面,所以最好阅读 Qt model/view architecture documentation。
您可以创建自己的继承自QTableView
的类来创建您的自定义表格视图。您必须将委托用于下拉功能和所有功能。所以请阅读QItemDelegate
类文档和documentation on subclassing delegates。
【讨论】:
【参考方案3】:如果您想始终显示它而不仅仅是在编辑时显示,我建议为特定列设置一个小部件,如该线程中所述:Qt - QTableView - Clickable button in table row
【讨论】:
以上是关于根据当前时间显示下拉列表的年月,需要显示之前六个月,用JS怎么来弄?的主要内容,如果未能解决你的问题,请参考以下文章