我试图在jQuery中做一个日期选择器。我把这些放在头标签里:
<link rel="stylesheet" type="text/css" media="screen" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css">
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<script type="text/javascript">
$(function() {
$('.date-picker').datepicker( {
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'MM yy',
onClose: function(dateText, inst) {
var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
$(this).datepicker('setDate', new Date(year, month, 1));
}
});
});
</script>从我在JavaScript中的代码的这一部分调用日期选择器:
case "mhc":
if (mhc_overlay == null) {
mhc_overlay = new google.maps.HeatmapLayer();
}
if (!mhc_overlay_visible) {
mhc_overlay_visible = true;
$("#MHC").removeClass("menuLink");
$("#MHC").addClass("menuLink_selected");
visibleOverlays.push("mhc");
var content = "";
content += "<label for='startDate'>Date :</label>";
content += "<input name='startDate' id='startDate' class='date-picker' />";
filterWindowContent.push({ id: "mhc", label: label, content: content });
showFilterWindow();
map.setMapTypeId(google.maps.MapTypeId.ROADMAP);
addToCurrentOverlayList("loadedmhc", "mhc", "MHC Live Map");
}
break; 没有显示错误消息,只是日期选择器在选中时不显示日历。我想知道为什么会这样。
提前谢谢。
发布于 2014-04-11 09:17:02
您要在文档中动态添加textfield。因此,您需要在showFilterWindow()函数之后调用datepicker()函数。我想在那之后它会正常工作。将您的jQuery数据报警器函数放在一个单独的函数中。如下所示:
function showdatepicker() {
$('.date-picker').datepicker( {
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'MM yy',
onClose: function(dateText, inst) {
var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
$(this).datepicker('setDate', new Date(year, month, 1));
}
});
}并在showFilterWindow()函数之后调用这个showdatepicker()函数。如下所示:
case "mhc":
if (mhc_overlay == null) {
mhc_overlay = new google.maps.HeatmapLayer();
}
if (!mhc_overlay_visible) {
mhc_overlay_visible = true;
$("#MHC").removeClass("menuLink");
$("#MHC").addClass("menuLink_selected");
visibleOverlays.push("mhc");
var content = "";
content += "<label for='startDate'>Date :</label>";
content += "<input name='startDate' id='startDate' class='date-picker' />";
filterWindowContent.push({ id: "mhc", label: label, content: content });
showFilterWindow();
showdatepicker();
map.setMapTypeId(google.maps.MapTypeId.ROADMAP);
addToCurrentOverlayList("loadedmhc", "mhc", "MHC Live Map");
}
break; 我想它会成功的。如果没有,请分享一个链接,以便我可以在线检查它。
发布于 2014-04-11 09:06:30
在调用jquery UI之前,需要添加jQuery库:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> https://stackoverflow.com/questions/23007542
复制相似问题