从数组检索中更改常量


change constant from array retrieve

我有一个ajax页面,打印许多回复框。

每隔几秒钟我得到另一个ajax数组与回复id和"最后回复日期"。我想在这个数组("res")上运行循环,它将找到类"lastReplyDate"的所有跨度,并将常数替换为我从数组

收到的数据。

反应:

while($mainIndex = mysql_fetch_array($mainQuery))
    $chatTopics[] = array('id' => $mainIndex['id'], 'statusID' => $mainIndex['statusID'], 'createDate' => $mainIndex['lastReplyDate']);
echo json_encode($chatTopics);

JS

function refreshStatuses() 
{ 
    var lastRefreshReplies = $('#lastRefreshReplies').val();
    var data = 'lastRefreshReplies=' + lastRefreshReplies;
    var data = data + "&act=refreshStatuses";       
     $.ajax({
        type: "POST",
        url: "ajax/chatsAjax.php",
        data: data,
        cache: false,
        dataType: 'json',
        success: function(res){
            console.log(res); 
            var elems = $('#chatLists li.replyBox');
            for (var i=0; i<res.length; i++) {
                $( "#chatLists li.replyBox id" data-ref = res[i]['id']).find("span.replyStatus").toggleClass('chatStatusColor_noAssign chatStatusColor_hd');;
            }               
            $( "#lastRefreshReplies" ).val(getTimestamp());                 
       }
     });
    setTimeout('refreshStatuses()', 10000); //10 seconds
}  
HTML例子:

<li class="replyBox">
    <div class="left">
        <img src='images/avatars/17.jpg' alt='' style='width: 60px; height: 60px;' /> <br />
    </div>
    <div class="left" style="margin-left: 15px;">
        <h2><a href="#" data-ref="24" class="chatTitle">test C2</a></h2>
        Esth  (Flying) <br />
        <span class="lastReplyDate">2016-06-29 17:34:10</span>
        <span class="replyStatus chatStatusColor_noAssign">Not assign</span>
    </div>
    <br class="clear" />
</li>
<li class="replyBox">
    <div class="left">
        <img src='images/avatars/17.jpg' alt='' style='width: 60px; height: 60px;' /> <br />
    </div>
    <div class="left" style="margin-left: 15px;">
        <h2><a href="#" data-ref="23" class="chatTitle">test c1</a></h2>
        Roi (Pele) <br />
        <span class="lastReplyDate">2016-06-29 18:19:31</span>
        <span class="replyStatus chatStatusColor_noAssign">Not assign</span>
    </div>
    <br class="clear" />
</li>

这是不正确的setTimeout(' refreshstatus ()', 10000);将settimeout放在函数之外

function refreshStatuses() 
{ 
    var lastRefreshReplies = $('#lastRefreshReplies').val();
    var data = 'lastRefreshReplies=' + lastRefreshReplies;
    var data = data + "&act=refreshStatuses";       
     $.ajax({
        type: "POST",
        url: "ajax/chatsAjax.php",
        data: data,
        cache: false,
        dataType: 'json',
        success: function(res){
            console.log(res); 
            var elems = $('#chatLists li.replyBox');
            for (var i=0; i<res.length; i++) {
                $( "#chatLists li.replyBox id" data-ref = res[i]['id']).find("span.replyStatus").toggleClass('chatStatusColor_noAssign chatStatusColor_hd');;
            }               
            $( "#lastRefreshReplies" ).val(getTimestamp());                 
       }
     });
} 
setTimeout(refreshStatuses(), 10000); //10 seconds