如何在鼠标单击时更改php变量?

时间:2016-07-15 08:07:35

标签: javascript php jquery ajax

    var randomColorFactor = function() {
        return Math.round(Math.random() * 255);
    };
    var randomColor = function(opacity) {
        return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',' + (opacity || '.3') + ')';
    };

    var config = '<div id='humidity'>'{
        type: 'line',
        data: {

            labels: <?php echo $json_array1; ?>,

            datasets: [{
                label: "",
                data: <?php echo $json_array; ?>,
            }]
        },

        options: {
            responsive: true,
            title:{
                display:true,
                text:'Chart'
            },
            tooltips: {
                mode: 'label',
                callbacks: {

                }
            },
            hover: {
                mode: 'dataset'
            },
            scales: {
                xAxes: [{
                    display: true,
                    scaleLabel: {
                        display: true,
                        labelString: 'Month'
                    }
                }],
                yAxes: [{
                    display: true,
                    scaleLabel: {
                        display: true,
                        labelString: 'Humidity'
                    },
                    ticks: {
                        suggestedMin: -10,
                        suggestedMax: 250,
                    }
                }]
            }
        }
    };

    $.each(config.data.datasets, function(i, dataset) {
        dataset.borderColor = randomColor(0.4);
        dataset.backgroundColor = randomColor(0.5);
        dataset.pointBorderColor = randomColor(0.7);
        dataset.pointBackgroundColor = randomColor(0.5);
        dataset.pointBorderWidth = 1;
    });

    window.onload = function() {
        var ctx = document.getElementById("canvas").getContext("2d");
        window.myLine = new Chart(ctx, config);
    };

在此代码中,我想在鼠标单击时将$json_array更改为其他数组$json_array2。我怎样才能实现它? $json_array包含从数据库中提取的值。

2 个答案:

答案 0 :(得分:1)

PHP 服务器端 jQuery (JS)是客户端语言,你可以' t在执行后更改PHP变量。

您可以使用 AJAX 来加载新数据。

答案 1 :(得分:1)

您无法通过鼠标单击直接在PHP中更改变量,PHP在您的服务器中运行,您只能访问PHP代码,直到它在您的服务器中运行并返回响应(通常是HTML)。

如果你想将数据发送到后端(可能存储在数据库中),你可以用Ajax来做。

以下是一些很棒的教程: http://www.w3schools.com/jquery/jquery_ajax_intro.asp http://blog.teamtreehouse.com/beginners-guide-to-ajax-development-with-php