我被困在工作中。 因此,我希望'flag'变量在执行php文件后保留一些值来检查Ajax结果。这样做的目的是,如果当前值与'flag'变量不同,则播放声音。 这是我用php,mysql和jQuery构建的队列系统... 因此,请检查此代码
首先检查我的jQuery
<script>
$(document).ready(function(){
setInterval(function(){loadDataPemandu()}, 2000);
});
function loadDataPemandu(door,session){
$( "h2" ).each(function(){
var tampungNilai = $(this).attr("id");
var link = "http://localhost/antrian_v2/js/ajax_act/AutoLoadPemandu.php";
$.ajax({
type : "POST",
dataType : "json",
url : link,
cache : false,
data : "TicketGroupId="+tampungNilai,
success : function(data) {
if(data.nomortiket == ""){
$( "h2#"+tampungNilai ).text("");
$( "td."+tampungNilai ).css({
"color": "black",
"background-color": "#4569de",
"font-style": "normal",
"font-weight": "bold",
});
$( "td."+tampungNilai ).removeAttr("jAlert");
} else {
$( "h2#"+tampungNilai ).text(data.nomortiket);
$( "h2#"+tampungNilai ).css({
"font-size" : "260%"
});
$( "td."+tampungNilai ).css({
"color": "black",
"background-color": "yellow",
"font-style": "normal",
"font-weight": "bold",
});
$( "td."+tampungNilai ).attr("jAlert", data.nomortiket);
}
});
}
}
</script>
然后我用上面的Ajax结果动态填充表,该结果始终使用setInterval运行2秒
<table align="center" id="tableGue">
<tbody align="center" id="AutoLoadPemandu">
<!-- <tbody id="AutoLoadPemandu" align="center"> -->
<?php
include"/config/koneksi.php";
$DoorId = isset($_GET['door']) ? $_GET['door'] : '0';
$no = 1;
$qrySelect = "SELECT * FROM qm_ms_ticketgroup WHERE TicketGroupActive = 'Y' ORDER BY TicketGroupId";
$sqlSelect = mysql_query($qrySelect);
while($tg = mysql_fetch_array($sqlSelect)){
$TicketGroupId = $tg['TicketGroupId'];
$Datahead1 = "<tr>
<td align='center' valign='middle'>
<div class='nama_table'>
$tg[TicketGroupName]
</div>
</td>
</tr>";
$DataBody2 = "<tr>
<td align='center' valign='middle' class='$TicketGroupId nama_antrian'>
<h2 class='testtt' id='$TicketGroupId'></h2>
</td>
</tr>";
echo $Datahead1 . $DataBody2;
$no++;
}
?>
</tbody>
</table>
我想要,如果$('#TicketGroupId')由Ajax填充,那么如果结果相同,它们将只显示一次声音,但是如果结果具有新值,则每次由setInterval运行的函数都会播放声音。
查看此图片 enter image description here
运行setInterval并在队列中找到新结果时,播放声音,但是如果运行setInterval后结果仍然相同,则不要播放声音。
我需要建议,希望您理解我要说的... 谢谢你们……