2015-07-01 17 views
8

Ich arbeite an einem ASP.Net Webformular, das AJAX Modelpoup Extender und jquery nepali-datepicker enthält. Ich muss nepali-datepicker zu einer Textbox integrieren, die in meinem zweiten ist, d. H. Mit blauem Hintergrund wie im Bild unten gezeigt. Problem ich bin vor ist, dass ich nicht in der Lage bin datepicker unten auf Position von textboxPosition von Datepicker in Modelpopup Textbox ändern

Basierend auf den Antworten auf der Post (How to change the pop-up position of the jQuery DatePicker control) konnte ich picker vor 2.em Modell Pop-up bringen. Gibt es einen Weg, den ich verwenden kann, um datepicker tatsächlich in die Textbox zu positionieren.

Hier ist mein Skript und Stile:

<script type="text/javascript">   
    function pageLoad() { 
     $('.nepali-calendar').nepaliDatePicker(); 
    } 

    $(document).ready(function() { 
     $('.nepali-calendar').nepaliDatePicker(); 

    }); 
</script>  

<style type="text/css"> 
    div#ndp-nepali-box 
    { 
     position:absolute; 
     z-index: 999999; 
    } 
</style> 

folgende Abbildung zeigt, wie ist es jetzt positioniert ist. enter image description here

Wenn ich position als relative verwende.

<style type="text/css"> 
    div#ndp-nepali-box 
    { 
     position: relative; 
     z-index: 999999; 
    } 
</style> 

Es sieht aus wie enter image description here

Gibt es eine Möglichkeit, dass ich tatsächlich picker zu positionieren Boden der Textbox verwenden können.

Antwort

0

relative Position Versuchen:

<style type="text/css"> 
    div#ndp-nepali-box 
    { 
     position: relative; 
     z-index: 999999; 
    } 
</style> 

Ich weiß nicht, was ist div # ndp-nepali-Box, aber versuchen, dies zu tun:

<style type="text/css"> 
    .ui-datepicker 
    { 
     position: relative; 
     z-index: 999999; 
    } 
</style> 

kann es wichtig sein

+0

Ich habe versucht, dass ... es nicht funktioniert .... 'datepicker' dialogbox von oben des zweiten' modelpopup beginnt und endet am unteren Rand des Hauptformulars. Ich habe die Frage aktualisiert, um das Design zu zeigen. – TFrost

+0

versuchen, "unten: 50px; rechts: 100px;" ? –

+0

@TFrost aktualisiert. Haben Sie Ihre Website im Web? So können wir die reale Situation betrachten – Backs

6

Wie Sie jquery UI Datepicker verwenden, sollte es beforeShow Eigenschaft haben und css innerhalb dieser Eigenschaft wie unten ändern.

prüfen diese fiddle

$('input.date').datepicker({ 
beforeShow: function(input, inst) { 
var cal = inst.dpDiv; 
var top = $(this).offset().top + $(this).outerHeight(); 
var left = $(this).offset().left; 
setTimeout(function() { 
    cal.css({ 
     'top' : top, 
     'left': left 
    }); 
}, 10); 
} 
}); 

Reference

+1

Ich benutze eine geringfügig andere Datumsauswahl von 'jquery UI Datepicker'. Ich suchte nach 'beforeShow'-Eigenschaft, konnte sie aber nicht finden. Wie auch immer, ich ging auf die Website von datepickers Entwickler, um ihn zu kontaktieren und erfuhr, dass er eine neue Version von datepicker veröffentlicht hat. Ich habe die neuere Version implementiert, von der ich nicht weiß, warum sie das Problem selbst gelöst hat. Danke sowieso :) – TFrost

+0

Aufgrund der Unterschiede in 'jquery datepicker' Plugins, war diese Lösung nicht für mich .. hoffe, diese Lösung funktioniert für andere Benutzer. Also werde ich Ihnen meine Belohnung belohnen :) – TFrost

+0

Danke !!! @TFrost –