function getTime()
{
var date = new Array(
<?php
$date1 = date("Y-m-d, H:i");
echo "new Array(\"".$date1."\")";
?>);
//document.write(date[0]);
return date[0];
}
function showmychart() {
max_time = getTime();
min_time = getMintime(max_time);
//document.write(max_time);
//delete myChart;
var c_channel = channel;
myChart = new Drawchart(max_time, min_time,c_channel);
myChart.showChart();
}
function changeSBS(){
channel = 'sbs';
showmychart();
}
function changeKBS2(){
channel = 'kbs2';
showmychart();
}
</script>
</head>
<body>
<center>
<div id = "header">
</div>
<div id="middle">
<input type = "button" id ="before" onclick="showBeforeChart();" value = "Before">
<object id="chart"></object>
<script class="code" id="Drawchart" type="text/javascript">showmychart();</script>
<input type = "button" id ="after" onclick="showAfterChart();" value = "After">
</div>
<div id = "channel_position">
<input type = "button" id ="before" onclick="changeSBS();" value = "aaa">
<input type = "button" id ="before" onclick="changeKBS2();" value = "bbb">
在此代码中,当我单击aaa按钮或bbb按钮时,我想使用函数getTime()更新函数shomychart()中的max_time。现在,当我单击按钮aaa,并且bbb它没有更新时,我认为它不会调用getTime()函数或者在getTime()函数中不起作用...我怎样才能解决这个问题? ??
答案 0 :(得分:1)
PHP是一种服务器端语言。这意味着您的服务器上的PHP代码将被执行,并将生成的纯HTML发送到客户端的浏览器。当浏览器收到您的页面时,它会显示如下内容:
function getTime() {
var date = new Array(
new Array("2013-01-01 13:37")
);
//document.write(date[0]);
return date[0];
}
请注意,日期烘焙到JavaScript代码中。
更好的解决方案是使用客户端的时间而不是(尝试使用)服务器的时间。您可以使用JavaScript(这是客户端语言)来使用Date
对象执行此操作:
function getTime() {
// Get current date
var date = new Date();
// Build a date string
var dateString = date.getFullYear()
+ "-" + (date.getMonth()+1)
+ "-" + date.getDate()
+ " " + date.getHours()
+ ":" + date.getMinutes();
// Return the constructed date string
// wrapped inside an array (since apparently you need it in that format)
// (Note that this is a short-hand notation for "new Array(dateString)")
return [dateString];
}
根据您使用的图表库,您可以简单地将Date
对象作为max_time
传递,这样您就不需要先构建日期字符串。然后,只需删除您自己的getTime()
,只需使用new Date()
。