3

私はMVC2に慣れています...スクリプトへのリンクとソースをビューに追加し、jquery関数とビオラを呼び出すだけです...作業中のJqueryコードがあります。しかし、jqGridtableToGrid関数を機能させることができません。jqueryライブラリをまったく正しくロードしていないか、スクリプトを適切な場所で実行していないことが原因だと推測しています。私のコードを見て、何が間違っている可能性があるかを見ていただけませんか?

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>ShowAllEncounters</title>
 <link href="@Url.Content("~/Content/jquery.jqGrid/ui.jqgrid.css")" rel="Stylesheet" type="text/css"/>
</head>

これが頭になります...以前はスクリプトもそこにリンクされていました...しかしそれは機能しませんでした...だから私はタグの外に置きました...そのように...

</html>
<script src="@Url.Content("~/Scripts/jquery.jqGrid.min.js")" type="text/javascript"/>
<script type="text/javascript">
$(document).ready(function () {
...});

私は何かが足りないのですか?MVC4サイトでjqueryのスクリプトを作成するにはどうすればよいですか?

おかしなアラートが表示されることすらありません!!!!!!!!!!!!!

@model IEnumerable<FocusedReadMissionsRedux.Models.TemplateModel>
<!DOCTYPE html>

<html>
<head>
<script src="@Url.Content("~/Scripts/jquery.jqGrid.min.js")" type="text/javascript"/>
<link href="@Url.Content("~/Content/jquery.jqGrid/ui.jqgrid.css")" rel="Stylesheet" type="text/css"/>
   <script type="text/javascript">
       $(document).ready(function () {
        alert("what is going on");
       });
   </script>
   <title>ShowAllEncounters</title>
</head>

更新:jqueryライブラリがロードされているときに問題が発生しているように見えます。これは間違いなく問題になります。これらのスクリプトをプロジェクトに追加するための堅実なパターンが必要ですか?

4

2 に答える 2

4

「新しい」MVC4テンプレートでは、jqueryスクリプトがバンドルを介して_layout.cshtmlの「下部」に追加されます。

_layout.cshtmlのブロック内で@Scripts.Render( "〜/ bundles / jquery")を移動します。

テンプレートがこのスクリプトインクルードをhtmlファイルの最後に配置する理由がわかりません...

于 2012-10-02T00:55:02.953 に答える
0

パトリスの答えに加えて(将来の訪問者に明確にするためだけに)。

バンドルは/App_Start/BundleConfig.csでカスタマイズできます。

NoProblemBabeが言ったように、Javascriptコンテンツを含むバンドルはhtmlファイルの最後に配置され、最初のアクセスでJavascriptファイルをロードしても、残りのHTMLファイルのロードが滞らないようにします。

jQueryの開始関数は$(document).readyに配置されているため(適切なコーディング方法で)、大したことはありません。さらに、JSファイルのブラウザキャッシュは覚えておくべきポイントです。(これはおそらくほぼ完全にブラウザで有効になります)。

于 2013-05-10T14:55:38.733 に答える