2009-11-15 2 views
1

서버 응용 프로그램과 클라이언트 측 자바 스크립트 모두에서 업데이트해야하는 업데이트 패널 내에 asp : Label이 있습니다. label.innerHTML을 설정하여 첫 번째 UpdatePanel 새로 고침 전에 레이블을 잘 업데이트 할 수 있습니다. 서버는 패널을 업데이트하는 동안 레이블을 올바르게 변경합니다. 업데이트 후 클라이언트 Javascript에서 label.innerHTML을 설정하면 더 이상 브라우저에 표시된 값이 변경되지 않습니다.asp를 변경하는 방법 : 업데이트 후 UpdatePanel에 내용을 레이블 하시겠습니까?

UpdatePanel 업데이트 후 Javascript에서 레이블을 계속 업데이트하려면 어떻게해야합니까?

답변

3

레이블을 새 DOM 요소로 바꾸기 때문에 UpdatePanel 새로 고침이 새로 고침 이후에 더 이상 유효하지 않게되기 위해 아마도 얻은 DOM 요소에 대한 참조는 document.getElementById으로 추정됩니다. 따라서이 요소에 대한 새 참조를 가져와 innerHTML을이 새 참조로 설정해야합니다.

이벤트는 DOM

  • label.innerHTML가 더 이상 작동 내부의 라벨을 대체 UpdatePanel이 trigerred되는이

    1. var label = document.getElementById('some_label'); label.innerHTML = 'abc';
    2. 처럼 보일 수 있습니다. 여기에서 1 단계를 반복해야합니다.
  • 2

    UpdatePanel이 새로 고침되면 DOM 요소가 대체됩니다. 이전 DOM 요소에 대한 참조는 더 이상 사용할 수 없으며 제거 된 DOM 요소를 참조하고 더 이상 존재하지 않습니다. 해당 속성에 액세스하려면 먼저 대체 DOM 요소를 찾아야합니다. document.getElementById ('label')를 사용하거나 jQuery를 사용하여 $ ('# label')을 사용하여 이름을 label으로 지정했다고 가정하면됩니다.