2011-04-14 4 views
1

웹 개발에서 요소를 클릭하면 JavaScript가 실행됩니다. 인터넷 익스플로러 9, 파이어 폭스 4 작은 메시지가 자바 스크립트 기능 왼쪽 아래 모서리에 팝업 모두에서 IE9 및 FireFox4의 JavaScript 알림 해제

은 요소에 이러한 요소를 클릭하여 실행됩니다.

는 ASP.NET 서버에 요청을 보냅니다 거의 모든 요소에 자바 스크립트 __doPostback (... 추한 매개 변수 이름 ..)를 사용합니다. 이 JavaScript는 ASP.NET 컨트롤에 의해 생성 된 HTML 요소에 자동으로 추가되며이를 피할 방법이 없습니다.

예를 들어, ASP.NET DropDownList는 HTML Select 요소로 렌더링되고 __doPostBack() 메서드가 추가되어 사용자가 새 요소를 선택할 때마다 서버가이 작업을 처리 할 수 ​​있습니다.

__doPostaback() 메소드는

ASP.NET 컨트롤 많은에 삽입되고,이 변화하기 쉬운 방법이 없다. 내 최종 사용자의

하나는

그래서, 내 질문은 ....이 새로운 기능들은 "디버그 모드"에있는 것처럼 느끼게 논평 : 나도이 팝업 쇼 뭔가를 어떻게해야합니까 사용자 친화적 인 ... 또는 브라우저에 (HTML을 통해)이 잔소리를 표시하지 않도록하는 방법이 있습니까?

감사합니다. 즉, 브라우저의 일부가 아닌 페이지와 같이 내 지식

-Frinny

+0

JavaScript를 링크에 넣지 말고 요소에 실제 이벤트 리스너를 사용하는 것이 좋습니다. –

+0

ASP.NET은 개발자의 HTML 요소에 JavaScript를 자동으로 삽입합니다. 엄청난 노력 없이는 이것을 바꿀 수 없습니다. 이 JavaScript가 추가 된 단순한 "링크", 드롭 다운 목록 (HTML 선택 요소), 단추 등은 모두이 코드가 자동으로 삽입되어 있습니다. – Frinavale

+0

ASP.NET을 사용하지 말고 대신 HTML을 쓰는 것이 좋습니다. – Raynos

답변

0

왜 링크의 href에게 해시 태그를 만들고 자바 스크립트를 통해 실제 작업을 첨부하지 않습니다

HTML 
<a id="foo" href="#foo">Foo</a> 

JS 
var foo = document.getElementById('foo'); 
foo.onclick = function(e){ 
    //script foo! 
    return false; 
}; 

사용자의 위치는 여전히 좋은보고 #foo 될 것이다,하지만 실제 조치가 foo.onclick 함수에 있습니다.

또는 이벤트를 인라인 (<a href="foo" onclick="return foo();">Foo</a>)으로 지정할 수도 있지만 HTML, CSS, & JS로 명확한 MVC 분리를 유지하려고합니다.

해시 태그를 사용하면 해시 변경 이벤트를 수신하거나 해시 태그 onload를 확인하여 사용자가 여전히 링크를 중간 클릭하고 새 탭에서 올바르게 작동 할 수 있습니다.

0

, 그것은 표시되지 만들 수있는 방법이 없습니다. 내가 할 것이 무엇

는 내부의 다른 기능을 포함하고 사용자가 읽을 수있는 이름을 가진 페이지 상단에 자바 스크립트 함수를 만들 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 그것은 비 ASP.NET 개발 환경에서 실현 가능합니다 ...그러나이 경우에는 그렇게 실현 될 수 없다. – Frinavale

+0

@Frinavale 이론상 FF4의 어딘가에있는'about : config'에서 해제 할 수 있습니다. 행운을 빈다. – Raynos