在php循环中调用jquery函数

时间:2013-07-05 05:15:56

标签: php jquery loops foreach

我有这个JS功能:

function count_messages_in_thread( convo_id ) {
$('#conversation_' + id ).load('counter.php', {
    conversation_id: id
});
}

在这个php循环中调用(粗略副本):

foreach ( $threads as $thread ) { 
echo "<script>$(function() { count_messages_in_thread( '" . $thread->convo_id . "' ); });</script>";
echo "<div id='conversation_" . $thread->convo_id . "'></div>";
}

正如您可能猜到的,此函数计算并显示论坛帖子中的(未读)消息数(其为单页应用程序,因此我将JS用于此目的)

我想将PHP和JS分开。我正在考虑使用php创建一个带有ID的数组,然后将其传递给JS以通过然后将其变量传递给相应的DIV。

有什么建议吗?

提前致谢?

1 个答案:

答案 0 :(得分:3)

将数据传递给JavaScript正是我所建议的。

<script>
  var threads = <?php echo json_encode($threads); ?>;
</script>

每当您将数据传递给JavaScript时,请使用json_encode()确保为您完成所有类型和转义。从那里,您可以处理JavaScript中需要做的所有事情。