2012-11-23 4 views
0

다른 모든 HTML 코드를로드하기 전에 기본 자바 스크립트를 실행하려고하면 _layout.cshtml에 js 함수를 추가하지만 작동하지 않습니다. 그것을하는 정확한 방법이다). 미리 감사드립니다.레이아웃 mvc에 자바 스크립트를 호출하는 방법

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta charset="utf-8" /> 
     <title>@ViewBag.Title</title> 
     <meta name="viewport" content="width=device-width" /> 
     <link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" /> 
     @Styles.Render("~/Content/mobileCss", "~/Content/css") 
     @Scripts.Render("~/bundles/modernizr") 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       alert("Do something"); 
      }); 
     </script> 
    </head> 
    <body> 

     <div data-role="page" data-theme="b"> 
      <div data-role="content"> 
       @RenderBody() 
      </div> 
     </div> 

     @Scripts.Render("~/bundles/jquery", "~/bundles/jquerymobile") 
     @RenderSection("scripts", required: false) 
    </body> 
</html> 
+0

전에 : 당신은 폐쇄''태그가,이 DOM이 완료되었습니다 때 실행되기 전에, HTML의 하단에 당신이 자바 스크립트를 배치하면 . 그러므로'$ .ready()'를 무의미하고 쓸데없고 쓸모 없게 만든다. –

답변

0
@Scripts.Render("~/bundles/jquery", "~/bundles/jquerymobile") 

이어야합니다 참고로

<script type="text/javascript"> 
     $(document).ready(function() { // JQuery not loaded here, $ is undefined 
      alert("Do something"); 
     }); 
    </script> 
+0

OK! 이제 첫 번째보기에서 경고가 표시되지만 다른보기로 이동하면/컨트롤러가 내 경고를 다시 표시하지 않습니다. – sebagiar

+0

@sebagiar 같은 레이아웃입니까? 개발자 콘솔을 열고 오류가 있는지 확인하고이 페이지 (브라우저의 소스 코드)에서 스크립트를 확인하십시오. – webdeveloper

+0

내가 틀렸어. 지금은 효과가있다. – sebagiar

관련 문제