2014-03-28 150 views
0

我有一個模式彈出,顯示了,我不得不添加該代碼是:抓住click事件

$("#ItemDetailsPanel").click(function(e) { 
e.stopPropagation(); 
}); 
$(document).click(function() { 
hideItemDialog(); 
}); 

這樣我就能夠迫使其關閉,如果點擊任何地方在元素外部,但我內部有一個日期選擇器,如果我點擊例如更改彈出窗口立即關閉的月份。我試過

$(".hasDatepicker").click(function(e){ 
    e.stopPropagation(); 
}); 

但它沒有爲我工作。如果用戶點擊日期選擇器,如何停止執行hideItemDialog()?

+0

可能重複[JQuery UI日期選擇器,onclick日期,獲取日期和傳遞到URL](http://stackoverflow.com/questions/8912755/jquery-ui-datepicker-onclick-of-a-date -get-the-date-and-pass-to-url) – Unknown

+0

我會推薦一個像Ben Almans'click outside'這樣的jQuery插件來實現此目的,而不是使用任何點擊來殺死模態http://benalman.com/code/projects/jquery -event-events/examples/clickoutside/ – haxxxton

+0

我的情況並不相同。對我來說,我有一個問題,除了日期點擊任何東西。如果我點擊沒有執行的日期選擇器上的任何地方,請選擇我的彈出窗口關閉。 – user2227904

回答

0
$('#ui-datepicker-div').click(function(e){ 
    e.stopPropagation(); 
}); 

訣竅。

+0

這對我不起作用。當我點擊prev/next按鈕來推進月份時,它仍然會觸發對話框關閉。 –