2017-01-11 3 views
1

Ich habe ein Problem mit Datepicker Kalender herum schweben. Ich muss damit aufhören. Ich brauche es, um am Eingabefeld zu bleiben.Stoppen Sie Datepicker von schwebenden

$('.date').datepicker({ 
    format: 'mm-dd-yyyy', 
    autoclose: true 
}); 

$('.close-button').unbind(); 

$('.close-button').click(function() { 
    if ($('.datepicker').is(":visible")) { 
    $('.date').datepicker('hide'); 
    } else { 
    $('.date').datepicker('show'); 
    } 
}); 

Unten ist die Geige: https://jsfiddle.net/qgzwwt70/4/

Hilfe.

+0

Könnten Sie bitte das konkretisieren? Was meinst du mit "bleib bei der Eingabebox"? –

+0

er ... verhindert, dass sich der Kalender beim Scrollen nach oben bewegt. Der Kalender muss unter dem Eingabefeld bleiben oder gesperrt werden (wie zum ersten Mal). –

+0

Mögliche Duplikate: http://StackOverflow.com/Questions/12351871/Jquery-Date-Picker-Not-Moving-with-page-Scroll –

Antwort

1

Sie können das gewünschte Verhalten erzielen, indem Sie den oberen Versatz des Popup-Fensters für die Datumsauswahl beim Fensterlauf berechnen.

$("#GIOCFModal").scroll(function(){ 

if($('.datepicker-dropdown').length == 1) 
{ 
if($('.date').offset().top > $('.datepicker-dropdown').offset().top) 
{ 
    var value = $('.date').offset().top - 15 - $('.datepicker-dropdown').height(); 
} 
else 
{ 
    var value = $('.date').offset().top + 35; 
} 

$('.datepicker-dropdown').offset({top:value}) 
} 

}); 

Arbeits Geige: https://jsfiddle.net/vLbphkq9/