모든 페이지에서 작동하도록 마스터 페이지에서 jQuery에 대한 스크립트 참조를 추가하려고합니다. 현재는 다음과 같습니다.
<script type="text/javascript" src="jquery.js"></script>
문제는 경로가 항상 실행중인 aspx 페이지에 상대적이므로 "jquery.js"파일이 동일한 폴더에있는 경우에만 작동한다는 것입니다. 작동하려면 라인을 다음과 같이 변경해야합니다.
<script type="text/javascript" src="../../jquery.js"></script>
이것은 루트 폴더에서 두 수준 깊이의 페이지에서만 작동하기 때문에 분명히 이상적이지 않습니다. 다음을 시도하면 IIS에서 예기치 않은 문자에 대한 오류가 발생합니다.
<script runat="server" type="text/javascript" src="~/jquery.js"></script>
어떤 아이디어?
편집 : 스크립트가 헤드 태그에 있어야 함을 언급하는 것을 잊었습니다 .
현재 최상위 답변은 마스터 페이지에 추가 할 때 " ASP.NET Ajax 클라이언트 측 프레임 워크를로드하지 못했습니다. "오류를 표시합니다. .Net 컴파일러가 아닌 javascript에서 발생합니다. ScriptManager를 헤드 섹션으로 이동하면 ScriptManager가 form 태그 안에 있어야한다는 컴파일 오류가 발생합니다.
세 번째 대답은 " 경로에 잘못된 문자가 있습니다. "컴파일러에서 예외가 발생 합니다.
편집 2 : 내 머리 태그에 해당 줄을 추가하면 IIS 에서이 오류가 발생합니다.
컨트롤에 코드 블록 (예 : <% ... %>)이 포함되어 있기 때문에 Controls 컬렉션을 수정할 수 없습니다.
해결 : 아래 답변에서 편집 된 응답을 가져 와서 asp : ContentPlaceHolder 요소에 넣었습니다 .