2014-03-25 72 views
0

我想用附加的Datepicker來處理輸入元素上的焦點事件以保存原始值。jQueryUI日期選擇器上的焦點事件

不幸的是,似乎任何點擊像下個月按鈕這樣的彈出式元素也會在輸入上生成焦點事件。它們看起來完全像來自輸入的真實焦點事件。

看到這個fiddle

<input id="dt" type="text"></input> 

$("#dt") 
.datepicker() 
.on('focus blur', function(e) { 
    console.warn("!%s", e.type, this, arguments[0], event); 
}); 

我如何處理唯一真正的焦點事件,而忽略了其他人呢?

+0

'e.isTrigger' ??? http://jsfiddle.net/Lb5L2/5/ –

+0

「真實」和「假」焦點事件有什麼區別?你想做什麼? – Zhihao

+0

@Zhaohao真實事件是由瀏覽器(鼠標)生成的,而假事件由jquery –

回答

0

如果我正確理解你想要做什麼,你可以在你的事件處理程序中保留一些狀態。當您收到焦點事件時,請將datePickerOpened標誌設置爲true,並且只有在收到事件時該標誌爲假時才執行該操作。然後,在得到模糊事件時,將datePickerOpened設置爲false。

+0

不幸的是,也有虛假的模糊事件。 –

相關問題