2012-01-06 30 views
0

MS Visual Studio 2010でASP.NET MVC 2 Webアプリケーションを作成しました.JQueryを使用してスタイルを追加する必要があります。div内にイメージスライドショーを作成するには、JQueryファイルを作成して私のView Master Pageとリンクしてください。しかし、私がプロジェクトを実行しようとすると、Visual Studioは「Microsoft JScript実行時エラー: 'jQuery'は定義されていません」と伝えます。この問題に関してお手伝いできますか? ...ありがとう:)jQueryがMicrosoft Visual Studio 2010で動作しないのはなぜですか?

here's the code I have given within my jQuery 

/*Coding : Nidhin & Eldhose*/ 


function slideSwitch() { 
var $active = $('#Left_Image DIV.active'); 

if ($active.length == 0) $active = $('#Left_Image DIV:last'); 

// use this to pull the divs in the order they appear in the markup 
var $next = $active.next().length ? $active.next() 
: $('#Left_Image DIV:first'); 

// uncomment below to pull the divs randomly 
//  var $sibs = $active.siblings(); 
//  var rndNum = Math.floor(Math.random() * $sibs.length); 
//  var $next = $($sibs[ rndNum ]); 


$active.addClass('last-active'); 

$next.css({ opacity: 0.0 }) 
.addClass('active') 
.animate({ opacity: 1.0 }, 1000, function() { 
$active.removeClass('active last-active'); 
}); 
} 

$(function() { 
setInterval("slideSwitch()", 5000); 
}); 
+0

このページにjQueryライブラリが含まれているかどうかを確認してください。 – Rhapsody

+0

Google Chromeの開発ツールを使用します。すばらしい。 F12をGoogle Chromeの中に置き、コンソールタブに移動します。あなたが何かを取得している場合は、スクリプトのエラーが表示されます。彼らはあなたを案内します。 – tugberk

答えて

1

jQueryが含まれていることを確認してください。

あなたのマスターページには、理想的には

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 

、スクリプトが最後にロードされなければならないようなものを持っていますが、あなたはそれを使用しようとする前に、あなたはjQueryのをロードした確認する必要があります。

+0

ブラザー私はそれを行った.. –

+0

今私は "Microsoft JScriptランタイムエラー: '$'は定義されていません"と伝える他のエラーがあります –

+0

それは確かに奇妙です。 "jquery is undefined"と "$ is undefined"は、(あなたが推測した)jQueryが正しく含まれていないときにスローするエラーです。あなたのスクリプトでjQueryを使用する前に、そのスクリプトをインクルードしてもよろしいですか?あなたの ''にjQueryを含めるようにしてください。 – Nix

3

あなたはおそらくそれを使用しようとする前に、jqueryのスクリプトを参照するのを忘れ:

<script src="<%= Url.Content("~/Scripts/jquery-1.5.1.min.js") %>" type="text/javascript"></script> 
0

Eldho、

私はあなたがslideSwitch()メソッドを再訪し、事の第一のこのタイプを分類示唆しています。 slideSwitch()をスタブして、次のようにすることもお勧めします。

function slideSwitch() { 
    var $active = $('#Left_Image DIV.active'); 
    alert($active); 
} 

そしてそこから少しずつ取り出してください。また、カバーの下で何が起きているのかを見るためには、ファイヤーバグを使用してください。最後に、コメントの数に述べたように、ケースにはjqueryののローカルコピーではなく、CDNのバージョンをロードしてみてください問題は、コンテンツDNSでありますなど

[編集] - 追加するのを忘れ、 jquery jsファイルが順番にロードされていることを確認してくださいBEFOREカスタムjsファイル!!すなわち

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script src="<%= Url.Content("~/Scripts/myscript.js") %>"></script> 
0

ビューに埋め込まれたスクリプトはありますか?もしそうなら、これは問題を引き起こしているかもしれません。

この問題は、レイアウトページのスクリプトの前にページがレンダリングされ、ビュースクリプトが順次 にレンダリングされるときに発生します。

たとえば、あなたはあなたの_Layout.cshtmlページ

</div> 
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script> 
</body> 
</html> 

の一番下にあなたのjQueryをrefencingされ、あなたのjqueryの検証は、あなたが

<h2>Edit</h2> 

<script src="<%: Url.Content("~/Scripts/jquery.validate.min.js") %>" type="text/javascript"></script> 
<script src="<%: Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js") %>"></script> 

@using (Html.BeginForm()) 

あなたのビュー内で例えば参照している、場合ビュー内のスクリプトをスクリプトセクションに移動することができます

<h2>Edit</h2> 

@section scripts { 
    <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"></script> 
} 

@using (Html.BeginForm()) 

およびrレイアウト内のスクリプトセクションに、スクリプトセクションがオプションかどうかを示す2番目のパラメータを渡します。

... 
    </div> 
    <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script> 
    @RenderSection("section", false) 
</body> 
</html> 
関連する問題