2013-10-21 2 views
0

ASP.NET Web Forms 프로젝트에서 VS2012로 작업하고 있습니다. 프로젝트는 모든 페이지에 사용되는 Site.Master 페이지를 가지고 있습니다. Site.Master에 스크립트를 추가하여 jQuery 함수를 작성할 수 있습니다. 문제 없어. 그러나 프로젝트의 특정 페이지에서 iQuery 스크립트를 어디에 어떻게 배치합니까? 페이지는 (은 Site.Master를 사용하기 때문에) 머리 부분을 가지고 있지만 하나 개의 섹션이 없습니다 : 나는 위의 라인 전에 스크립트를 작성하는 경우ASP.NET 페이지에서 jQuery 스크립트를 작성할 수 있습니까?

<asp:Content runat="server" ID="BodyContent" ContentPlaceHolderID="MainContent"> 

내가 만 콘텐츠 컨트롤은 CONTECT 페이지에서 직접 사용할 수 있습니다 "VS 문제를 얻을 수를 ... "

그렇다면 jQuery 스크립트는 어디에 하나의 페이지에만 적용 할 수 있습니까?

답변

3

마스터 페이지의 머리 부분에 콘텐츠 자리 표시자를 포함하도록 사이트 마스터 페이지를 수정하면됩니다. 그런 다음 마스터 페이지를 사용하는 정규 aspx 페이지에서 asp : content 개체를 넣은 다음 콘텐츠 개체에 자바 스크립트 코드를 배치합니다.

<asp:ContentPlaceHolder ID="head" runat="server" /> 

하고 aspx 페이지에서 :

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server"> 

</asp:Content> 

을하지만 당신은 더 나은 성능을 찾고 있다면 나는에 스크립트를 넣어 것

그럼 당신은 마스터 페이지의 머리에 필요합니다 페이지 하단 당신은 여기에 대한 자세한 내용을보실 수 있습니다 : http://developer.yahoo.com/performance/rules.html#js_bottom

+0

모든 대단히 당신의 도움에 감사드립니다. 스크립트를 페이지 하단에 배치하는 것이 더 나은 경우 asp : Content Head 섹션이 asp : Content MainContent 섹션 뒤에 있어야한다는 것을 의미합니까? – Hidalgo

+0

마스터 페이지의 내용 자리 표시자는 마스터 페이지의 맨 아래에 있지만 양식 닫기 태그 – Avitus

+0

앞에 있어야한다는 의미입니다. 고맙습니다. – Hidalgo

1

당신은 예를 들어 asp:contentJquery를 넣을 수 있습니다 :

<asp:Content runat="server" ID="BodyContent" ContentPlaceHolderID="MainContent"> 

<script> 
//Your Jquery 
</script> 
</asp:Content> 

이 페이지가 사용하는 마스터 페이지에서 JQuery와 libray를 등록해야한다는 유일한.

도움이 되었기를 바랍니다.

0

당신은 당신의를 Page_Load 함수에서 다음과 같이 프로그램을 추가 할 수 있습니다

HtmlGenericControl include = new HtmlGenericControl("script"); 
Include.Attributes.Add("type", "text/javascript"); 
Include.Attributes.Add("src", yourUrl); 
this.Page.Header.Controls.Add(include); 
관련 문제