Javascript JS图表不使用带有计时器的asp.net更新面板显示
我是用Js图表创建的Javascript JS图表不使用带有计时器的asp.net更新面板显示,javascript,c#,asp.net,sql-server,jscharts,Javascript,C#,Asp.net,Sql Server,Jscharts,我是用Js图表创建的asp.netwebform。该Js图表数据来自MS SQL数据库。我想在05秒内更新图表。在“无更新页面加载”面板中,图表显示正确。但在添加到更新面板后,图表不会显示。我试图用各种方法解决那个问题。但我仍然找不到解决办法。我希望你的支持 我的aspx代码为: <script src="Content/js/ChartJS.js"></script> <asp:UpdatePanel ID="UpdatePanel
asp.net
webform。该Js图表数据来自MS SQL数据库。我想在05秒内更新图表。在“无更新页面加载”面板中,图表显示正确。但在添加到更新面板后,图表不会显示。我试图用各种方法解决那个问题。但我仍然找不到解决办法。我希望你的支持
我的aspx代码为:
<script src="Content/js/ChartJS.js"></script>
<asp:UpdatePanel ID="UpdatePanel3" runat="server">
<ContentTemplate>
<div class="row" style="text-align: center; padding-left: 5%;">
<div class="col">
<div style="width: 500px; height: 300px;">
<asp:Literal ID="chartTemp" runat="server"></asp:Literal><br /><br />
<p>Temperature</p>
</div>
</div>
<asp:Timer ID="Timer3" runat="server" Interval="5000" OnTick="Timer1_Tick"> </asp:Timer>
</ContentTemplate>
</asp:UpdatePanel>
温度
我的aspx.cs代码为:
protected void Timer1_Tick(object sender, EventArgs e)
{
objDeviceClass.DeviceNme = qryStrng;
string chartType = "Temp";
DataTable dtTempChart = objDeviceClass.GetChartData(chartType);
if (dtTempChart != null)
{
String chart = "";
chart = "<canvas id=\"line-chart\" width=\"60\" height=\"20\"></canvas>";
chart += "<script>";
chart += "new Chart(document.getElementById(\"line-chart\"), { type: 'line', data: {labels: [";
string valueX = "";
for (int i = 0; i < dtTempChart.Rows.Count; i++)
valueX += dtTempChart.Rows[i]["time"].ToString() + ",";
chart += valueX;
chart += "],datasets: [{ data: [";
// get data from database and add to chart
String value = "";
for (int i = 0; i < dtTempChart.Rows.Count; i++)
value += dtTempChart.Rows[i]["temperature"].ToString() + ",";
value = value.Substring(0, value.Length - 1);
chart += value.ToString();
chart += "],label: \"Temperature (°C)\",borderColor: \"#3e95cd\",fill: true}"; // Chart color
chart += "]},options: { title: { display: true,text: 'Temperature (°C)'} }"; // Chart title
chart += "});";
chart += "</script>";
chartTemp.Text = chart;
}
}
protectedvoid Timer1\u Tick(对象发送方,事件参数e)
{
objDeviceClass.DeviceName=qryStrng;
字符串chartType=“Temp”;
DataTable dtTempChart=objDeviceClass.GetChartData(chartType);
if(dtTempChart!=null)
{
字符串图表=”;
图表=”;
图表+=”;
chart+=“新图表(document.getElementById(\'LineChart\”),{类型:'line',数据:{标签:[”;
字符串值x=“”;
对于(int i=0;i