javascript - jQuery Datepicker în Twitter Bootstrap 3 Modal
Am încercat destul de multe soluții pentru această problemă până acum, dar nu reușesc să funcționeze. Încerc să adaug un selector de dată în formularul meu. Formularul este plasat într-un modul bootstrap și totul este încărcat prin ajax. Totul funcționează bine, cu excepția selectorului de dată care nu apare deloc atunci când este plasat în modul.
Speram că o soluție simplă precum: .datepicker {z-index:9999 !important;} va funcționa, dar nu funcționează. Știe cineva o soluție simplă pentru asta?
Iată selectorul meu de dată:
$(function() {
$( ".datepicker" ).datepicker({ dateFormat: "yyyy-mm-dd" });
});
Iată formularul meu:
<form action="" method="post">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">Endre artikkel</h4>
</div>
<div class="modal-body">
<label for="arrived">Motatt</label>
<input type="text" name="arrived" class="form-control datepicker" id="arrived">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</form>
Formularul este încărcat în acest div:
<div class="modal fade" id="load_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" style="z-index: 1040;"></div>
Cu acest javascript:
function edit_article(id){
$("#load_modal").load("load_modal.cgi?type=edit&id="+id);
}
Răspuns #1
Modalul este probabil încărcat după ce ai adăugat .datepicker() ar trebui să evaluezi acel cod după ce se încarcă formularul.
function edit_article(id){
$("#load_modal").load("load_modal.cgi?type=edit&id="+id);
$("#load_modal .datepicker").datepicker({ dateFormat: "yyyy-mm-dd" });
}
Răspunsul #2
Dacă apelezi acest cod la ready() al documentului
$(function() {
$( ".datepicker" ).datepicker({ dateFormat: "yyyy-mm-dd" });
});
Nu există niciun formular cu selector de dată, așa că nu este inițializat
apelează aceasta încă o dată după ce se încarcă formularul.
asta ar trebui să îți rezolve problema
