使用PHP向jQuery提供动态值

使用PHP向jQuery提供动态值,php,jquery,morris.js,Php,Jquery,Morris.js,你好!我有一个Morris图表,我想提供一个从PHP到jQuery的值。我已经在stackoverflow.com上搜索过了,但是根据我的问题,我找不到合适的解决方案。有人能提供一个关于代码如何工作的答案和解释吗 我注意到jQuery代码已经在函数中了。我的问题是如何使用JavaScript中的事件调用函数?我不知道如何创建jQuery函数 以下是代码: 功能${ 严格使用; var mainApp={ 主要乐趣:功能{ /*==================================

你好!我有一个Morris图表,我想提供一个从PHP到jQuery的值。我已经在stackoverflow.com上搜索过了,但是根据我的问题,我找不到合适的解决方案。有人能提供一个关于代码如何工作的答案和解释吗

我注意到jQuery代码已经在函数中了。我的问题是如何使用JavaScript中的事件调用函数?我不知道如何创建jQuery函数

以下是代码:

功能${ 严格使用; var mainApp={ 主要乐趣:功能{ /*==================================== 梅蒂斯菜单 ======================================*/ $‘主菜单’.metisMenu; /*==================================== 加载相应的菜单栏 ======================================*/ $window.bindload调整大小,函数{ 如果$this.width<768{ $'div.sidebar-collapse'.addClass'collapse' }否则{ $'div.sidebar-collapse'。删除类'collapse' } }; /*==================================== 莫里斯油炸圈饼图 ======================================*/ 莫里斯,甜甜圈{ 元素:“莫里斯甜甜圈图表”, 数据:[{ 标签:2017-2018-1, 价值:3000 }, { 标签:2017-2018-2, 价值:4000 }], 调整大小:true }; }, 初始化:函数{ mainApp.main_fun; } } //初始化/// $document.readyfunction{ mainApp.main_fun; }; }jQuery; 注册学生总数 欢迎乔德,很高兴看到你回来。 甜甜圈图表示例
如果数据是静态的,这意味着您必须重新加载整个页面来更新图表,那么最简单的解决方案是使用全局JavaScript变量

在HTML中

<?php

$data = [];

$res = $conn->query('SELECT sy.schoolYear, sy.schoolSem, COUNT(*) AS totalRegStud FROM tblreg as r 
INNER JOIN tblschoolyear AS sy ON sy.syId = r.syID GROUP BY sy.syId');
while ($res && $row = $res->fetch_assoc()) {
    $data[] = [
        'label' => $row['schoolYear'] . '-' . $row['schoolSem'],
        'value' => (int)$row['totalRegStud']
    ];
}
?>
<script>var chartData = <?=json_encode($data)?>;</script>

将动态数据从PHP传递到javascript图表函数是否存在问题?你不需要jquery函数。谢谢你提供的信息。。。如果您有答案,请发布,我也会尝试@rinu的答案:-谢谢@rinu的回答。。。不。。。它不是静态的。。。我只是把一个静态值作为一个样本,其中的数据必须填写。。。。我将尝试将您的解决方案转换为动态,如果可行,我将评论或编辑我的帖子…:-我试图把它转换成动态的,但我想不出来。。。你能编辑你的答案使之动态吗?提前感谢您的数据来自哪里?页面上是否有刷新计时器或按钮?是否重新加载要更新的页面?在任何情况下,我都需要查看您正在使用的完整代码来实现这一点。您需要循环$getSYList和$loadSemCount,并将数据合并到一个新数组中。此新数组应具有标签键和值键格式。标签来自$getSYList,值来自$loadSemCount。你能做到吗?也许一个更简单的解决方案是重写整个PHP部分,并首先创建正确的数组格式。您只需要一个函数和一个SQL查询。查询将是从tblschoolyear GROUP BY schoolYear中选择schoolYear,COUNTsyId as totalSY
Morris.Donut({
    element: 'morris-donut-chart',
    data: chartData,
    resize: true
});