테스트 사이트 - 개발 중인 베타 버전입니다

ajax 문의드립니다. 채택완료

토타토타 7년 전 조회 1,737

아래와 같이 사용중에 있습니다. php 페이지에서 내용을 불러와서 보여지는것 까지는 아주 잘 되는것 같습니다. 30초 단위로 불러오게 한건데요? 저런 방식으로 하는게 맞는건지 궁금하구요

 

또하나 

 

<a href> 또는 버튼을 이용해서 화면 바뀌지 않고 live_data.php 쪽으로 날짜를 보내려고 하는데요

어떻게 하면 될까요? 예를들어 2018-05-28 이라는 버튼을 누르면 live_data.php 화일로 2018-05-28 이라는 값을 보내서 처리후 다시 보여지게 하려고 합니다.

너무 어려우면 ㅜㅜ 힌트라도 좀 부탁드리겠습니다.

 

<div id="live_data"></div>

 

<script>
    function mb_runAjax() {

    $.ajax({
        url: 'live_data.php',
        dataType: 'html',
        type: 'POST',
        data: '',
        success: function(data){
                $('#live_data').html(data);
            }
        });
    }

    $(document).ready(function(){ 
        setInterval(function(){ 
            mb_runAjax(); 
        }, 30000); 
    }); 
</script>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
7년 전

테스트 해 보지 못해 제대로 작동되는지는 모르겠습니다만

먼저, javascript부분은 아래처럼

</p>

<p><script>

function mb_runAjax() {

    $.ajax({

        url: 'live_data.php',

        dataType: 'html',

        type: 'POST',

        data: 'cdate='+cdate,

        success: function(data){

            $('#live_data').html(data);

        }

    });

}</p>

<p>function formatDate() { 

    var d = new Date(), month = '' + (d.getMonth() + 1), day = '' + d.getDate(), year = d.getFullYear(); 

    

    if (month.length < 2) month = '0' + month; 

    if (day.length < 2) day = '0' + day; </p>

<p>    return [year, month, day].join('-'); 

}</p>

<p>$(document).ready(function(){ 

    var cdate = formatDate();</p>

<p>    setInterval(function(){ 

        mb_runAjax(); 

    }, 30000); 

}); 

</script></p>

<p> </p>

<p>그리고 데이터를 받는 live_data.php 쪽에서는 </p>

<p><strong>$_POST['cdate']; </strong>로 받아 php를 처리하시면 되겠네요.</p>

<p> </p>

<p> </p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

진서기
7년 전

$('button').click(function(){

    mb_runAjax(); 

});

이렇게 해보세요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인