1

設定中のフォームで次のエラーが発生します。

Uncaught TypeError: Object [object Object] has no method 'datepicker' 

私はしばらくの間グーグルで検索しており、この問題に関するいくつかの投稿をチェックしました。jquery と jquery ui を正しい順序で使用していますが、引き続きこの問題が発生します。

私のhtml(フッター)

  <!-- Included JS Files (Compressed) -->
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <script src="/javascripts/foundation.min.js"></script>
  <script src="/javascripts/flexy-menu.js"></script>

  <!-- Initialize JS Plugins -->
  <script src="/javascripts/app.js"></script>
  <script src="/javascripts/lma.js"></script>

lma.js 内で datepicker を呼び出します。

// datepicker 
$(document).ready(function() {
    $('.checkIn, .checkOut').each(function() {
        $(this).datepicker({ dateFormat: 'yy-mm-dd' });
    });
});

Foundation 3 を使用していますが、コンソールに Uncaught TypeErrro が表示される理由がわかりません。

ここでフォーム コードを更新します。

  <div class="six columns bookForm">
      <form id="reserveNow" action="#">

        <label>Check In<br />
          <input type="text" value="02/24/2013" class="checkIn round">
        </label>

        <label>Check Out</br>
          <input type="text" value="02/27/2013" class="round checkOut">
        </label>

      </form>
  </div><!--twelve columns-->
4

4 に答える 4

1

JS は問題ありませんが、HTML を変更しました。
これが実際の例です: ( Example )

<div class="six columns bookForm">
    <form id="reserveNow" action="#">
        <label for="check-in">Check In</label>
        <input id="check-in" type="text" value="02/24/2013" class="checkIn round" />
        <label for="check-out">Check Out</label>
        <input id="check-out" type="text" value="02/27/2013" class="round checkOut" />
    </form>
</div>
<!--twelve columns-->

新しい HTML を試してみてください。うまくいかない場合は、JS ファイルに競合があるようです。

于 2013-11-12T21:40:14.250 に答える
0

このエラーが発生するjquerytoolsを使用していましたが、インクルードの順序が間違っていたようです。jquery-uiの上にjquerytoolsを置くと、うまくいきました:

<script type="text/javascript" src="/js/jquery-1.10.2.min.js"></script>
<script src="http://cdn.jquerytools.org/1.2.7/full/jquery.tools.min.js"></script>
<script type="text/javascript" src="/js/jquery-ui-1.10.3.min.js"></script>
于 2014-02-12T17:53:35.560 に答える
0

datePicker オブジェクトをインスタンス化する必要があります。このようなもの:

 $( "#datepicker" ).datepicker({
        });
于 2013-11-12T21:21:51.310 に答える