2010-08-02 5 views
0

ascx 자체에 script 태그로 선언 된 많은 JavaScript가있는 ASCX 구성 요소가 있습니다. 나는 중단 점을 설정할 수 있고, 디버거는 멈춰야 만하지만, 디버거에서 "현재 줄"로 강조 표시된 텍스트는 실제 자바 스크립트 근처에 있지 않습니다 (렌더링 된 파일보다 훨씬 높습니다). 실제로 "false"실행 라인이있는 실제 코드가 하나 또는 두 개의 라인으로 "wing it"할 수 있지만, 모든 호버 기능과 자바 스크립트 디버깅을 유용하게 만드는 모든 것을 잃어 버리게됩니다.IE8 디버깅 ASCX 구성 요소가 멈 추면 자바 스크립트 코드에서 정확한 위치를 표시하지 않습니다.

나는 ascx 파일의 상단에 스크립트를 넣으려고했지만 아무 소용이 없습니다. 전체 페이지가 렌더링 될 때까지 중단 점을 설정하지 않으려 고 시도 했으므로 실제 코드 줄이있는 곳으로 스크롤해야하며 디버거는 여전히 그 위 어딘가에서 멈 춥니 다.

다른 사람이이 문제를 어떻게 보았습니까?

다른 브라우저 사용에 대한 제안으로 답하지 마십시오. 이 사이트는 IE7 및 IE8을 제외하고는 작동하지 않습니다.

감사합니다.

답변

0

스크립트를 외부 JS 파일로 이동하십시오.
(이것은 좋은 연습입니다.)

+0

나는 이것이 좋은 습관이며 처음 생각 뿐이라고 생각하지만, 자바 스크립트는 ASP.Net의 <% = whataver %> 대체를 광범위하게 사용합니다. 이 모든 것을 바꿀 수 있고 스크립트를 옮길 수도 있지만 그렇게함으로써 내가 소개 할 새로운 버그를 생각해 보겠다. – Craig

0

나는 당신과 같은 문제를 다루고 있습니다. js 코드를 외부 JS로 옮길 수는 없습니다. 왜냐하면 코드를 작성한 사람이% = var %>와 함께 .cs 변수를 사용하기 때문입니다. 가장 간단한 해결책은 디버거를 작성하는 것입니다. 어디서나 당신은 브라우저가 스크립트 디버깅을 시작하려는 마지막

1

!

나는 몇 달 동안이 문제에 대한 해결책을 찾고있다

이 나를 위해 일했다.!

<script type="text/javascript" language="javascript"> 
    debugger 
    function ThrowError() { 
     $(function() { 
      $.openDOMWindow({ 
       loader: 0, 
       width: 500, 
       height: 250, 
       windowSourceID: '#ErrorAlert' 
      }); 
      return false; 
     }); 
    } 
    function CloseError() { 
     $(function() { 
      $.closeDOMWindow({}); 
      return false; 
     }); 
    } 

    if ("False" == "True") ThrowError(); 
</script> 

내가 올바르게 사용하는지 모르겠지만, 내가 필요한 것을 나에게 줄 것 같습니다.

감사합니다.

관련 문제