2014-02-09 113 views
2

jquery ui datepicker在地圖之外工作,但在地圖上jquery ui datepicker不工作。jquery日期選擇器不與谷歌地圖工作InfoWindow

任何想法什麼可能是錯的?

代碼:

var html = "<table width='250px' height='300px'>" + 
       "...." + 
       "<tr><td>Url:...." + 
       "<tr><td>Date:</td> <td><input type='text' id='datepicker'/> </td> </tr>" +    
       "<tr><td></td><td><input type='button' value='Save & Close' onclick='saveData()'/></td></tr></table>"; 

    infowindow = new google.maps.InfoWindow({ 
    content: html 
    }); 

我可以節省從地圖中所有形式的信息。但datepicker不在地圖內工作。

而且事件偵聽器,我使用:

google.maps.event.addListener(map, "click", function(event) { 
    marker = new google.maps.Marker({ 
     position: event.latLng, 
     map: map 
    }); 
    google.maps.event.addListener(marker, "click", function() { 
     $("#datepicker").datepicker(); 
     infowindow.open(map, marker); 
    }); 
}); 

任何人有任何想法?

圖像:http://postimg.org/image/oe40y960z/

回答

1

使用domready -event的infowindow的創建日期選擇器。

之前的domready - 事件表沒有被注入到文檔中,可能不會被jQuery訪問。

另一種選擇:申請的日期選擇器設置將內容直接前:

infowindow = new google.maps.InfoWindow({ 
content: $(html).find('#datepicker').datepicker().end()[0] 
}); 

注:

#ui-datepicker-div{z-index:1000 !important} 
+1

非常感謝。 我從你的建議中做了什麼,'code' infowindow = new google.maps.InfoWindow({0}){(html).find('#datepicker')。datepicker()。end()[0] });'code' 並且還添加了css。 現在是完美的。 – papps

+0

Image:http://postimg.org/image/z3cck44k1/ – papps

+0

Papps,你應該將莫勒博士的回答標爲正確! – CHawk

1

你要通過:當UI將通過地圖設置zIndex的覆蓋在日期選擇器domready中

下面是代碼

infowindow.addListener('domready', function() { 
     $('.datepicker').fdatepicker({ 
      pickTime: true, 
     }); 
    });