jQuery Datepicker clickoutside detection
jQuery Datepicker clickoutside detection
我在尝试检测日期选择器之外的点击时遇到问题:我有一个输入(日期选择器)。单击时,日历打开。然后我想检测何时有人在日历外点击。我使用此代码:
$(document).click(function (e) {
//click outside detection
var container = $("#ui-datepicker-div,#datepicker");
if (!container.is(e.target) // if the target of the click isn't the container...
&& container.has(e.target).length === 0) // ... nor a descendant of the container
{
alert("out");
}
});
效果很好,但是当我单击 next 和 prev 按钮时出现问题:它触发了 clickoutside 事件。
http://jsfiddle.net/Fa8Xx/3086/
我的问题:如何在更改日历上的月份时不触发外部事件(单击上一个和下一个按钮...)?
此致。
尝试使用这个,
$( "#datepicker" ).datepicker();
$(document).click(function (e) {
//Clic hors de la ligne ou du calendrier ou du bouton valider dans la derniere colonne
var container = $("#ui-datepicker-div,#datepicker");
if (!($(e.target).is($('#ui-datepicker-div,#datepicker')) || $(e.target).has($('#ui-datepicker-div,#datepicker')).length === 0))
{
alert("out");
}
});
我在尝试检测日期选择器之外的点击时遇到问题:我有一个输入(日期选择器)。单击时,日历打开。然后我想检测何时有人在日历外点击。我使用此代码:
$(document).click(function (e) {
//click outside detection
var container = $("#ui-datepicker-div,#datepicker");
if (!container.is(e.target) // if the target of the click isn't the container...
&& container.has(e.target).length === 0) // ... nor a descendant of the container
{
alert("out");
}
});
效果很好,但是当我单击 next 和 prev 按钮时出现问题:它触发了 clickoutside 事件。
http://jsfiddle.net/Fa8Xx/3086/
我的问题:如何在更改日历上的月份时不触发外部事件(单击上一个和下一个按钮...)?
此致。
尝试使用这个,
$( "#datepicker" ).datepicker();
$(document).click(function (e) {
//Clic hors de la ligne ou du calendrier ou du bouton valider dans la derniere colonne
var container = $("#ui-datepicker-div,#datepicker");
if (!($(e.target).is($('#ui-datepicker-div,#datepicker')) || $(e.target).has($('#ui-datepicker-div,#datepicker')).length === 0))
{
alert("out");
}
});