2009-06-26 8 views
1

내 페이지가 완전히 다시 게시됩니다. 나는 AJAX와 함께 마스터 페이지를 사용하고있다. 마스터 페이지의 구조는 다음과 같습니다.ASP.NET에서 두 번 다시 게시

+---------------------------------------------+ 

| Web User Control with AJAX Tab Control  | 

+---------------------------------------------+ 

|  |      |    | 

| Col1 | ContentPlaceHolder | Col3  | 

|  |      |    | 

|  |      |    | 

+---------------------------------------------+ 

웹 사용자 정의 컨트롤에는 AutoPostback이 설정된 AJAX 탭 컨테이너가 있습니다.

이 masterpage를 사용하여 여러 ASPX 페이지를 만들었습니다.

내용 자리 표시자는 페이지에 따라 웹 사용자 정의 컨트롤을 가져옵니다.

탭을 클릭하여 페이지를 점프 할 때마다 페이지가 완전히 두 번 포스트 백됩니다. 이유는 무엇인지 이해하지 못합니다. 따라서 보고서를 두 번 볼 때 번거롭지 않게 보입니다.

아이디어를 얻으려면 http://softwaregenius.net/ivnew4을 방문하십시오. 나는 loginid를 줄 수 없다.

+0

당신은 페이지를 의미 단지 내부적으로이 두 번 다시 게시를 인식하거나 또한 사용자가 인식하지 않습니다 나타나는 브라우저에서 두 번째 다시 게시를 위해 다시로드 하시겠습니까? – Juri

답변

4

페이지 지시문으로 AutoEventWireup이 사실이고 당신이를 Page_Load 같은 것들에의 onInit 이벤트는 해당 이벤트가 두 번 다시 게시처럼 보이게 두 번 발생합니다 첨부합니다. 그것은 또 다른 의미 일 수 있습니다.

+0

안녕 Mattew, 나는 당신이 옳다고 생각합니다. OnInit도 사용했기 때문에. 어쨌든 이제 TabContainer에 대한 AutoPostback을 제거하고 javascript를 사용하여 페이지를 호출했습니다. 다시 한 번 감사드립니다. – IrfanRaza

1

추가 정보가 필요하지만 업데이트 패널을 배치하고 구성하는 방법은 무엇입니까? 업데이트 패널 있습니까?

업데이트 패널이없는 경우 자동 포스트 백이 발생하고 전체 페이지가 다시 게시됩니다. 컨트롤이 업데이트 패널로 둘러싸인 경우 업데이트 패널 만 다시 렌더링됩니다.

1

나를위한 두 개의 포스트 백은 src가없는 리소스 또는 이미지 태그가없는 경향이 있습니다 - E.G.

<img src=""/> 
1

페이지에 두 번 다시 게시하는 코드가 있습니까?
if (! page.ispostback) {}
나는 AJAX 때문이 아니라고 생각합니다.

1

나는 정확한 상황에 있었고 꽤 오랜 시간 동안 좌절감을 느꼈다. 누군가가 여전히 유용하다고 생각할 수도 있습니다. 내 페이지에 사용자 정의 아약스 호출 (업데이트 패널 아님)이 많이 포함되어 있고 저장 요청 (예 : 요청 [ ".."] 스타일 구현이 아닌 control.value 스타일 구현 - 컨트롤이 Ajax를 통해 동적으로 생성 되었기 때문에) 포스트 백이 두 번 발생했습니다 . 이 두 솔루션은 모두은 간단합니다 : false로

  1. 설정으로 AutoEventWireup로으로 AutoEventWireup을 필요한 사람들을위한
  2. (이 또한 내 경우처럼, 예를 databinded 데이터 그리드를 위해 유선 된 일부 사용자 지정 컨트롤을 비활성화됩니다) 사실, 모든 포스트 백 컨트롤 또는 버튼이 서버 컨트롤이 아닌 표준 HTML 태그 여야하고 runat = "server"가 없어야합니다.

그게 전부 야!

0

탭으로 인해 문제가 발생했습니다. <img><asp:Image>없이 "src =" 이 사실은 Chrome 또는 IE8 이상에서 적용됩니다.

[Nos tivemos o mesmo problema e ele é causado pela falta dos src nos controles <img> e <asp:Imagem> . Isso ocrre apenas nos chrome ou no ie8 acima]