1

これは startdate のエディターであり、@Html.EditorFor(model => model.startDate) jquery ブローがあり、クエリのコードがページにあり、プログラムを実行するとカレンダーのポップアップが表示されず、両方のコードが cshtml ページにあります

<meta charset="utf-8" />

  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css" />
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script>
  <script>
  $(function() {
    $( "#startDate" ).datepicker();
  });
  </script>
4

2 に答える 2

1

交換

@Html.EditorFor(model => model.startDate)

@Html.EditorFor(model => model.startDate, new { @class="startDate" })

そのフィールドにクラスを指定しておらず、jQuery を

$(function() {
    $( ".startDate" ).datepicker();
  });

クラスを使用しているとそう#なります。.

于 2013-03-11T17:06:31.587 に答える
0

すべての外部スクリプトが正しくロードされたことを確認する必要があります。Fiddler をインストールしてから、リクエストを監視し、すべてがロードされているかどうかを確認することをお勧めします。それがすべて問題ない場合は、datepicker 関数を呼び出す前に、スクリプトが実際に読み込まれることを確認する必要があります。MVC 4 およびセクション機能を使用している場合、jquery および jquery-ui ライブラリをロードする呼び出しの後に、すべての JavaScript コードをビューに配置される SCRIPTS セクションに入れる必要があることを意味します。Goggle Chrome のコンソールを使用して、javascript エラーがないことを確認します。

ここに投稿したコードを見ると、すべてが機能しているはずです。私はこれを何百万回も行ってきましたが、問題が発生するたびに、JQuery ライブラリ参照が見つからなかったか、適切な順序でロードしていなかったことが原因でした。

于 2013-03-11T19:28:45.887 に答える