[英]console.log() only if AJAX data changed
我做的:
<script type="text/javascript">
$('.storage').html("");
setInterval(function(){
$.get('./playcommand.php', function(data) {
if($('.storage').html() !== data){
$('.result').html(data);
console.log("neu");
}
});
}, 500); // 5 seconds
</script>
我的意图是console.log("neu");
只有当来自AJAX的数据与之前的数据不同时,这就是为什么我创建了一个div“存储”,其中我保存了与之前数据不同的最新数据。
但它不起作用,它总是记录“neu”,即使数据不同。
更新:
我的新代码:
<script type="text/javascript">
var storage = $('.storage').text();
setInterval(function(){
$.get('./playcommand.php', function(data) {
if($('.storage').text != data){
$('.result').html(data);
console.log("neu");
}
});
}, 500); // 5 seconds
</script>
还是不行
因为在比较之前你是空白的。 从第一行删除此行,
$('.storage').html("");
或者将字符串保存在一个变量中进行比较
var storage = $('.storage').text();
$('.storage').html("");
然后将data
与storage
进行比较
<script type="text/javascript">
var storage = $('.storage').text().trim();;
$('.storage').html("");
setInterval(function(){
$.get('./playcommand.php', function(data) {
if(storage != data.trim()){
$('.result').html(data);
console.log("neu");
}
});
}, 500);
</script>
在你的代码中
$('.storage').html("");
此行使存储空白将其删除或将其放在功能之后
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.