Как повесить обработчик mousedown на datepicker input-а?
Здравствуйте!
Если datepicker добавлять через див: $("#mydatepicker").datepicker(); $("#mydatepicker").mousedown(function() { console.log("mouse downed"); }); <div id="mydatepicker"></div> То mousedown отрабатывает при нажатии на пикер и всё хорошо. Но если я добавляю datepicker в input поле, то mousedown срабатывает не по нажатии на пикер, а по нажатию на поле, что в общем-то весьма логично, но непонятно, как же тогда вешать обработчик на сам дейтпикер? То есть, я хочу, чтобы в этом коде: <html lang="en"> <head> <meta charset="utf-8" /> <title>jQuery UI Datepicker - Default functionality</title> <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" /> <script src="http://code.jquery.com/jquery-1.9.1.js"></script> <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script> <link rel="stylesheet" href="/resources/demos/style.css" /> <script> $(function() { $("#mydatepicker").datepicker({ changeYear : true }); $("#mydatepicker").mousedown(function() { console.log("mouse downed"); }); }); </script> </head> <body> <p> Date: <input type="text" id="mydatepicker" /> </p> </body> </html> mouse downed отрабатывал не по нажатию на поле input, а по нажатию на сам datepicker. Заранее спасибо! |
Посмотри, что "получилось"в DOM после обертки INPUT в datepicker() там и вешай, советую инструмент opera dragonfly.
|
Там получается #ui-datepicker-div, повесил на него mousedown и всё заработало! Спасибо!
|
Не за что, но id какой-то подозрительный, возможно в документе может существовать только один экземпляр выпадающего календаря, тогда при нескольких INPUT с datepicker правильное подключение будет по-сложнее.
|
Часовой пояс GMT +3, время: 06:11. |