2012-12-28 2 views
1

나는 AJAX를 사용하여 포스트를 보내고 있습니다.응답 200 좋아, 나는 내가 원하는 div를 볼 수 있다는 것을 알 수있다. 그러나 그 데이터는 대체되지만 추가되고 있습니다. 이러한 유형의 문제를 디버그하고 수정하는 방법을 알려주십시오.Ajax 게시자 새로 고침 게시 :

request.done(function(response) { 
alert('Loaded.'); 
$('#data1').html(response); 
}); 

"로드 됨"경고가 표시됩니다. 그래서 끝났어. 에 방화범이 끌리는 나는 200 OK 데이터를 볼 수있다.

1) # data1은 자바 스크립트 템플릿입니다. 그래서 테이블의 데이터를 트리거하는 템플릿을 수정하려고합니다.

데이터는 다음과 같습니다

<divid='data1'> 
<script> ...................</script> 
</div> 

그래서 데이터를 업데이트하기 것을 알 수있다. 이전 데이터는 제거되지 않습니다. 내가 시도 : replaceWith 을 그와 함께 또한, 그것은 단지 페이지를 추가하고이 사업부는 자바 스크립트 템플릿입니다 그것을

=

를 대체하지 않습니다. 때문에이 같은 div에 : 내 브라우저 데이터에

<div id='data1'><script> .....</script></div> 
  1. 항상 업데이트 대체되지지고 있습니다.
  2. 한 가지 더 기본적인 질문입니다. 응답을 받으면 데이터가 추가됩니다. 내가 시청 소스를 볼 때 심지어 디스플레이는 예제 20 항목을 보여줍니다. 응답이 수신되면 소스가 수정되지 않을 것입니다.
+4

'.html (데이터)'대신'.html (응답)'을 사용 하시겠습니까? –

+1

thedata'variable 그냥 'undefined ', 사용'응답 ' – sdespont

+0

덕분에 @Explosion, 그 typo을 sdespont. 그렇게하면 브라우저에서 이전 항목을 볼 수 있고 새로운 항목이 추가됩니다. 1) 페이지 소스가 변경되지 않았습니다. 내가 그 div라고 말하면 완전한 div가 대체되지 않아야합니까? –

답변

1
<div=data1> 
<script> ...................</script> 
</div> 

이 유효 HTML하지

<div="data1"> 
    <script> ...................</script> 
</div> 
<!-- use/instead of \ to close tags--> 

환호 좋은 마크 업으로 더 많은 인라인으로 오타를 HSA. 그것은해야한다 : 당신은 속성의 id= 부분을 놓치고

<div id='data1'> 
<script> ...................</script> 
</div> 

.

+0

Barmar에게 감사드립니다. 그것은 제가 게시 한 질문의 오타입니다. 언급 한 속성이 있습니다. 문제는 브라우저에서 이전 테이블 항목이 삭제되지 않고 div에 있지만 새 항목이 추가된다는 것입니다. 그게 문제 야. 나는 그 질문에 대해 다시 말하고있다. 내 실수 –

+0

AJAX 응답의 div에 실제로 작성한 div와 동일한 ID가 있습니까? 중복 ID가 생성되어 문제를 일으킬 수 있습니다.당신은'

...
'으로 끝납니다. – Barmar

+0

reply.yes AJAX 응답에 대한 @Barmar에 채우기와 같은 div ID가 있습니다. 나는 그것을 복제물로 보지 않는다. –

1

request.done(function(response) { 
alert('Loaded.'); 
$('#data1').html(response); 
}); 

을해야하며, 마크 업도

+0

심지어 그때 그것은 오게의 내용을 새롭게하지 않고 덧붙이고 있습니다. –

관련 문제