2009-04-17 2 views
0

ASP.NET AJAX 1.0 UpdatePanel이있는 리피터가 있습니다. UpdatePanel 외부에 있지만 여전히 리피터에있는 버튼이 있습니다. UpdatePanel 내부의 섹션 (사용자가 특정 방식으로 질문에 대답 할 때 표시되는 숨겨진 Panel 컨트롤)이 나타나면 맨 아래의 버튼이 사라집니다.Repeater의 UpdatePanel이 그 아래의 컨트롤을 덮어 씁니다.

다음은 일러스트레이션입니다. 나는 페이지 상단에 테이블을 이동하면

[REPEATER] 
    [UPDATEPANEL] 
    [QUESTION] <-- when user says yes, Panel appears 
    [PANEL] 
    [/UPDATEPANEL] 
    [TABLE]   <-- This table is no longer visible. 
    [Button] 
    [/TABLE] 
[/REPEATER] 

는 내용이 사라지지 않기 때문에, 나는 컨트롤이 실제로있다 스타일의 문제, 의심하지만, UpdatePanel의 내용을 아래에 있습니다. 나는 < br clear = "all"/ >을 테이블 바로 앞에 추가해 보았습니다. 아무 소용이 없었습니다.

어떻게 해결할 수 있습니까?

편집 : UpdatePanel을 확장해야하는 잘못된 태그가 빠졌기 때문에 컨트롤을 숨길 수 있습니다. Firefox 플러그인을 사용하면이를 식별하는 데 도움이됩니다.

+0

은 고객에게 민감하고 매우 오래 가기 때문에 불가능합니다. 특히 볼 가치가있는 것은 무엇입니까? – paulwhit

답변

2

내 제안은 파이어 폭스와 웹 개발자 도구 모음을 사용하여 업데이트가 발생한 후보기 생성 소스를 수행하거나 파이어 버그로 요소를 검사하는 것입니다. 표 html이 페이지에 계속 남아있는 경우 스타일 문제이거나 패널에 잘못된 형식의 HTML 문제가있어 표가 제대로 렌더링되지 않을 수 있습니다. 테이블 html이 누락 된 경우 AJAX 콜백에 의해 DOM에서 제거되거나 덮어 씁니다. Firebug를 사용하여 실제로 AJAX 콜백을 디버깅 할 수있을뿐만 아니라 실제로 상황이 언제 어떻게 변경되는지 확인할 수 있습니다.

질문에 업데이트 전후에 생성 된 HTML을 게시하면 여전히 문제를 파악하고 추가 입력을 원할 경우 도움이됩니다.

+0

감사합니다. 도움이되었습니다. 테이블이 실제로 사라져 UpdatePanel이 경계를 넘어서고있는 것처럼 보입니다. – paulwhit

0

테이블을 updatepanel에 넣거나 하나의 updatepanel에 전체 repeater를 넣으십시오.

+0

매우 커서, 전선을 통해 많은 콘텐츠를 전송하므로이 문제를 피할 필요가 있습니다. – paulwhit

-1

Clear 속성은 Deprecated as of HTML 4.01이고 isn't included in XHTML Strict - 사용중인 문서 유형 - 엄격한을 사용하는 경우 (그리고 특정 종류의 XHTML을 사용중인 경우 br를 종료 했음) 다음으로 브라우저는 clear 속성을 무시할 권리가 있습니다.

당신은 CSS와 함께이 일을 더 잘 될 것이다 : 그것은 UpdatePanel에 다시 와서 그것을 존중하도록 브라우저를 강제 있도록 또한

<style type="text/css"> 
    .cleaner{ 
    clear: both; 
    } 
</style> 

<br class="cleaner" /> 

, 당신은, 패널 후 BR 퍼팅 시도 할 수 있습니다.

+0

팁 주셔서 감사합니다. 내 문제는 다른 것이지만 이것은 좋은 지식입니다. – paulwhit

관련 문제