我想在我的应用程序中使用 jQuery 日历,但不是作为日期选择器。是否可以嵌入到页面中?
我想为每个日期添加自定义数据。这可能吗?
问问题
1106 次
2 回答
2
我有一个几周前为日期设置颜色和悬停的示例。您可以按照自己的方式更改此代码!一个活生生的例子: http: //marc2.nl/workshops.html(这个演示确实给它一个背景颜色,并为链接添加一个悬停)。除了给它背景颜色或添加悬停之外,您还可以向它添加图像。
初始化:
var calDates = {"36":{"datetime":"2013-02-18 11:02:22","name":"name1","color":"e8b1b1","url":"url1"},"37":{"datetime":"2013-01-22 11:03:08","name":"name2","color":"9fd69f","url":"url2"}};
$("#calendar").datepicker({
onChangeMonthYear : updateDates,
onSelect : updateDates
});
updateDates();
循环遍历日期并为其赋予正确的颜色:
function updateDates()
{
// Timeout is needed otherwise jQuery UI has not yet updates the month
setTimeout(function(){
for( var k in calDates )
{
var obj = calDates[k],
yearMonthDay = obj.datetime.split(" ")[0].split("-"),
time = obj.datetime.split(" ")[1];
$("#calendar [data-month='" + (parseInt(yearMonthDay[1]) - 1) + "'][data-year='" + yearMonthDay[0] + "'] a").each(function(){
if( $(this).text() == yearMonthDay[2])
{
$(this)
.css({
backgroundColor : "#" + obj.color,
cursor: "pointer",
position : "relative"
})
.unbind("click")
.attr("href", obj.url)
.bind("click", function(){
document.location = $(this).attr("href");
})
.bind("mouseenter", function(){
$(this).find(".hover").show();
})
.bind("mouseleave", function(){
$(this).find(".hover").hide();
})
.append("<div class='hover'><strong>" + obj.name + "</strong><br />" + time + "</div>");
}
});
}
}, 10);
}
于 2013-02-22T18:17:02.987 回答
0
那么,您真正想要的是日历小部件吗?您可以在 Google 上查看“jquery 日历”。这是我找到的第一个:
http://arshaw.com/fullcalendar/
这是一个相当大的选项列表:
http://www.tripwiremagazine.com/2012/11/jquery-calendar-date-pickers.html
还有五个清单:
http://www.devcurry.com/2010/06/5-jquery-calendar-plugins-that-can-be.html
于 2013-02-22T18:11:41.157 回答