2012-02-26 5 views
0

웹 사이트의 루트에서 잘 실행되는 MVC2 응용 프로그램이 있지만 가상 디렉터리에 게시 할 때 이미지 나 CSS가 전혀 작동하지 않습니다. Url.Content를 사용했으며 Javascript 및 JW Player를 사용하는 비디오 파일을 제외하고 모두 작동했습니다. 내가 사용 내 동적 버튼을 건물입니다 :MVC2 - IIS7, 가상 디렉터리 - Url.Content

의 onclick = 및 String.format ("동영상 플레이어 ('../ 비디오/{0}')", VideoName을);

이제는 Url.Content를 사용해야하고 몇 가지 방법을 시도했지만 실패했습니다. 입력 해 주셔서 감사합니다. 미리 감사드립니다.

답변

2

마크 업과 자바 스크립트를 분리 할 수 ​​있습니다.

<div class="player" data-url="<%= Url.Content("~/video") %>/foo.avi"> 
    Play foo 
</div> 

<div class="player" data-url="<%= Url.Content("~/video") %>/bar.avi"> 
    Play bar 
</div> 

후 별도의 자바 스크립트 파일에 당신이 .click 이벤트를 구독 할 수 있습니다 :

$(function() { 
    $('.player').click(function() { 
     var url = $(this).data('url'); 
     videoplayer(url);  
     return false; 
    }); 
}); 
+0

감사 대린, 솔루션은 잘 작동, 예를 들어, 당신은 HTML5 data-* 속성 및 jQuery를 사용할 수 있습니다 그러나 기존의 fuction (videoname)에 '<% = Url.Content ("~/video /"+ VideoName) %>'를 넣으 려합니다 (var videotoplay = '<% = Url.Content ("~"+ videoname) %> '; 내 버튼의 비디오 이름은 /video/test.mp4입니다. 오류가 발생합니다. 'videoname'이름이 현재 컨텍스트에 존재하지 않습니다. 감사합니다 – hncl

+0

@ user373721, 아, 그래서'videoname'은 자바 스크립트 변수입니까? 당신은 당신의 질문에 그것을 설명해야합니다. 나는 내 대답을 예제로 업데이트 할 것이다. –

+0

Darin은 정확하지만 일부 디버깅 기술을 배워야합니다. Fiddler/F12 도구를 사용하고 소스를보고 요청한 URL을 확인하고 작동하지 않는 이유를 알아보십시오. – RickAndMSFT