2013-07-21 2 views
0

현재 아래와 같이 div를 새로 고칩니다.중첩 된 DIV - 내부 DIV를 새로 고치지 못하도록합니다.

페이지 ajax.php 새로 고침하지해야 DIV의의 번호를 가지고 그러나 Main.php

<script type="text/javascript"> 
    var auto_refresh = setInterval(
    function() 
    { 
    $('#load_me').load('ajax.php').fadeIn("slow"); 
    }, 10000); // autorefresh the content of the div after 
       //every 10000 milliseconds(10sec) 
    </script> 

. 이것을 할 수있는 방법이 있습니까? 즉, 특정 DIV가 (ID로) 어떤 비용 으로든 새로 고침되는 것을 방지합니다.

이렇게해야하는 이유는 DIV에 텍스트를 입력 할 때 새로 고쳐지는 텍스트 상자가 있기 때문입니다.

답변

1

당신은 항상 새로 고침 어떤 요소를 선택할 수 있지만, 반대와 떠나는 요소를 수행하는 것은 이러한 요소가

var to_refresh = ['id1', 'id2', 'id3']; 

var auto_refresh = setInterval(function() { 
    $.each(to_refresh, function(_,id) { 
     $('#'+id).load('ajax.php #'+id).fadeIn("slow"); 
    }); 
}, 1000); 
+0

것은 당신이 설명해 주시겠습니까 등을 갱신해야 요소 내에 중첩 된 경우 특히 더 복잡 할 것이다 또한 위의 방법으로 내부 div가 새로 고쳐지는 것을 막을 수 있습니까? id1에 3 개의 내부 div가 있다고 가정 해보십시오. 그들 모두는 상쾌하게 될 의무가있다. 그렇지 않니? – anandsathya

+0

그렇기 때문에 입력 요소가없는 DIV 만 정기적으로 새로 고칠 수 있도록 페이지를 다시 구성하는 것이 좋습니다. – techfoobar

+0

그와 같은 요소를 새로 고칠 수없고 자식 요소를 새로 고치지 않기를 기대합니다. 그것은 불가능! 그렇기 때문에 많은 네스트가 포함 된 컨텐츠에서 리프레시되지 않도록 엘리먼트를 걸러 내기 위해 오랜 시간을 보냈을뿐 아니라 새로 고쳐야하는 엘리먼트를 대상으로하는 것이 더 쉽습니다. 디자인 결함이 있습니다. 전혀 수정하지 않아도됩니다. 마크 업을 작성하여 전혀 필터링 할 필요가 없도록해야합니다. 적어도 제 의견입니다. – adeneo

관련 문제