2013-03-29 24 views
6

Fiddle ex: http://jsfiddle.net/EmwFE/Datepicker Bootstrap nie działa.

Więc starali się dostać datepicker pracy i myślę, że mam następujące kierunki, ale nie mogę dostać kalendarz pop-up.

TIA

Przykład Fiddle powyżej kodu poniżej.

    <label class="control-label" for="input08"> 
        My Start Date 
       </label> 
       <div class="controls"> 
        <script type="text/javascript"> 
         $(document).ready(function() { 
         $('.datepicker').datepicker(); 
        </script> 

        <div class="input-append date" id="dp3" data-date="12-02-2012" data-date-format="dd-mm-yyyy"> 
         <input class="span2" size="16" type="text" value="12-02-2012" class="datepicker"> 
         <span class="add-on"><i class="icon-th"></i></span> 
        </div> 

       </div> 
+0

Twój „intencja” JavaScript jest poprawna, można użyć definicji klasy w stylu selektor jQuery, nie jest absolutnie wymagane do korzystania z identyfikatora. Ale twój przykład zawiera 2 błędy: 1) gotowa funkcja nie jest "zamknięta" prawdopodobnie tęsknię "});" na końcu. 2) Użytkownik zdefiniował 2 razy atrybut "klasy" na wejściu. –

Odpowiedz

8

Look to: jsfiddle

postawić inicjalizacji identyfikator div, który zawiera wszystko. celowałeś w nicość!

$('#dp3').datepicker(); 
+0

D'oh. Dziekuje panu. Zawsze się uczyć ... (czasami wolniej niż powinienem) – weggie

+5

Nie ma problemu! Tylko ci, którzy nic nie robią, nigdy nie popełniają błędów. – Lughino

3

Nie masz zestawu identyfikatorów. I coś innego, co może spowodować problemy później, jest wejście jest atrybutem klasy zdefiniowane dwa razy, zamiast listy każdej klasy w tym samym atrybutem oddzielone spacją:

<input id="datepicker" class="span2 datepicker" size="16" type="text" value="12-02-2012"> 

http://jsfiddle.net/EmwFE/2/

Zauważyłem, że miał pewne javascript inline próbuje odwoływać się do niego przez klasę $('.datepicker'), która nie działała, ponieważ masz atrybut klasy zdefiniowany dwa razy, a druga definicja jest ignorowana. Panel javascript używany $('#datepicker'), który nie działał, ponieważ nie ustawiono identyfikatora na wejściu. Tak więc albo technika selektora jquery by zadziałała, wystarczyło naprawić problemy z elementem.

5

Masz kilka problemów w swoim kodzie.

  • Brakujące nawiasy po twój gotowy() zadzwonić
  • Korzystanie z selektora id zamiast selektora klasy (odnosi się do id="datepicker", .datepicker do class="datepicker")

Working example

0

rozwiązanie Lughino zaowocowała w jakimś dziwnym zachowaniu dla mnie. Myślę, że należy usunąć

<script type="text/javascript"> 
$(document).ready(function() { 
$('.datepicker').datepicker(); 
</script> 

i

$('#dp3').datepicker(); 

I napisać ten kod w polu javascript:

$(document).ready(function() { 
    $('#dp3').datepicker(); 
}); 

Zobacz jsfiddle.

+0

Przepraszam, nie widziałem, żeby to już było wspomniane. – Yatoom

0

Oddelegowany przykład kod zawiera 2 błędy:

1) Funkcja gotowy() nie jest zamknięty:

$(document).ready(function() { 
    $('.datepicker').datepicker(); 
}); 

2) elementów napędowych ma "klasa" atrybut zdefiniowano 2 razy:
(przy użyciu atrybutu klasy w selektorze jQuery doskonale znaleźć element (y), nie ma potrzeby korzystania z identyfikatora)

<input class="span2" size="16" type="text" value="12-02-2012" class="datepicker"> 

powinny być

<input class="span2 datepicker" size="16" type="text" value="12-02-2012"> 

jsfiddle with correction