AJAX jquery rafraîchir div toutes les 5 secondes

j'ai obtenu ce code à partir d'un site Web que j'ai modifié à mes besoins:

<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
</head>

<div id="links">

</div>

<script language="javascript" type="text/javascript">
var timeout = setTimeout(reloadChat, 5000);

function reloadChat () {
$('#links').load('test.php #links',function () {
        $(this).unwrap();
        timeout = setTimeout(reloadChat, 5000);
});
}
</script>

Dans l'essai.php:

<?php echo 'test'; ?>
<!-Donc je veux un test.php doit être appelé toutes les 5 secondes dans links div. Comment puis-je faire de ce droit?

19
demandé sur user3838972 2014-08-22 16:04:33

5 réponses

Essayez ceci.

function loadlink(){
    $('#links').load('test.php',function () {
         $(this).unwrap();
    });
}

loadlink(); // This will run on page load
setInterval(function(){
    loadlink() // this will run after every 5 seconds
}, 5000);

Espérons que cette aide.

38
répondu Yunus Aslam 2014-08-22 12:26:41

Essayez d'utiliser setInterval et jquery library et juste essayer de suppression unwrap()

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">

var timeout = setInterval(reloadChat, 5000);    
function reloadChat () {

     $('#links').load('test.php');
}
</script>

UPDATE

vous utilisez une ancienne version de jquery afin d'inclure les dernières version jquery

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
6
répondu Kanishka Panamaldeniya 2014-08-22 12:20:13
<script type="text/javascript">
$(document).ready(function(){
  refreshTable();
});

function refreshTable(){
    $('#tableHolder').load('getTable.php', function(){
       setTimeout(refreshTable, 5000);
    });
}
</script>
2
répondu Elamparuthi 2016-01-23 05:42:18

Essayez de ne pas utiliser setInterval.

Vous pouvez renvoyer la requête au serveur après une réponse réussie avec timeout.

jQuery:

sendRequest(); //call function

function sendRequest(){
    $.ajax({
        url: "test.php",
        success: 
        function(result){
            $('#links').text(result); //insert text of test.php into your div
            setTimeout(function(){
                sendRequest(); //this will send request again and again;
            }, 5000);
        }
    });
}
2
répondu Dudar Mykola 2018-06-10 10:18:22

vous pouvez utiliser ce un.

<div id="test"></div>

vous java script code devrait être comme ça.

setInterval(function(){
      $('#test').load('test.php');
 },5000);
1
répondu Maneesh Singh 2014-08-22 12:22:37