во-первых, я новичок в java-скрипте, а также в jquery. У меня есть задача, которую нужно выполнить, т.е. на картах Google, когда мы нажимаем на определенную область (многоугольник, круг), необходимо открыть информационное окно с некоторыми стилями. Поэтому я перешел в информационное окно и добавил немного css (jquery custom css ui lightness). В этом информационном окне мне нужно показать календарь со временем. Поэтому я сделал много RD и написал код
я написал код, используя инструменты рисования, информационный блок, jquery custom css, jquery-ui-timepicker
Теперь моя проблема заключается в том, что jquery-ui-timepicker не поднимается в информационном поле. если я использую его в обычном div, он работает нормально.
вот часть моего кода:
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/themes/smoothness/jquery-ui.css" type="text/css" media="all" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min.js"></script>
<script type="text/javascript" src="Scripts/jquery-ui-timepicker-addon.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('.datetimepicker').datetimepicker({});
});
</script>
var contentString =
'<table width="100%"' +
'<tr>' + '<td width="18%">From Date:</input></td>' + '<td> <input class="datetimepicker" id="start_time" name="start_time" type="text" /></td>' + '<td width="18%" align="center">To Date:</input></td>' + '<td><input class="datetimepicker" id="end_time" name="end_time" type="text" /></td>' + '</tr>' +
'</table>'
function RaiseInfoWindow() {
google.maps.event.addListener(drawingModesType, 'click', function (event) {
if (infoBox)
infoBox.close();
var bounds = new google.maps.LatLngBounds();
message = GetMessage(drawingModesType);
InfoBoxType(InfoBox, message);
infoBox.setOptions({ content: message });
infoBox.setPosition(bounds.getCenter());
infoBox.open(map);
google.maps.event.addListener(infoBox, 'domready', function () {
jQuery("#tabs").tabs();
});
});
function GetMessage(polygon) {
coordinates = polygon.getPath().getArray();
message = ['<div id="tabs">', '<ul>', '<li><a href="#tab-1" ><span>Modify</span></a></li>', '<li><a href="#tab-2"><span>Save</span></a></li>', '</ul>',
'<div id="tab-1">', '<li><div style="color:#000" class="divText" >Approximately area is ' + GetAreaInAcres(polygon) + ' kms</div></li>', '<div class="divbuttonText"><p><input type="button" value="Edit" title="Edit" class="buttonStyle" onclick="ShapeEditable(true);" />' + " " + '<input type="button" value="Done" title="Done" class="buttonStyle" onclick="ShapeEditable(false);" />' + " " + '<input type="button" value="Delete" title="Delete" class="buttonStyle" onclick="DeleteShape(drawingModesType);" /></p></div>', '</div>',
'<div id="tab-2">', '<p>' + contentString + '</p>', '</div>', '</div>'].join('');
return message;
}
Обновить
JsFiddle Вот мой Jsfiddle с моим полным кодом (не думайте, что я разозлился. Я пытался добавьте URL-адрес скрипта, но он не работает. Я видел так много jsfiddles (которые приведены в примерах с надстройкой jquery-ui-timepicker .js, там также такая же проблема), поэтому я добавил script.мой код начинается с строки 2199. Пожалуйста, не обращайте внимания на перед строками)
Обновление 2:
вот моя обновленная скрипка после применения средства выбора времени предложения @gaurrav поднимается, но оно поднимается после от 2 до 3 кликов