我以前使用 highcharts 从数据库中获取数据,但是因为它在更新面板中,所以它没有显示数据。
<input class="test" name="ga" type="radio" value="a"> name</input>
<input class="test" name="ga" type="radio" value="b"> last</input>
<input class="test" name="ga" type="radio" value="c"> first</input>
使用这个收音机,数据正在工作,因为我从 vb.net 的后代码中调用了 javascript,我通过创建一个隐藏字段并将数据集获取到一个数组来做到这一点,从那里我使用了一个 Json,然后将它调用到隐藏值并将其显示在图表上。但是现在我需要使用单选按钮来实现聊天:以下代码是我的单选按钮,同样的概念......
<asp:RadioButtonList RepeatDirection="Horizontal" CssClass="radioList test"
ID="RadioButtonList1" AutoPostBack="true" runat="server"
RepeatLayout="Flow" name="ga" type="radio">
<asp:ListItem Selected="True" Value="a">name</asp:ListItem>
<asp:ListItem Value="a">first</asp:ListItem>
<asp:ListItem Value="a">last</asp:ListItem>
</asp:RadioButtonList>
当我使用此代码时,数据不确定,当我刷新时它不会从服务器获取数据。我的 JavaScript 代码是:
$(function () {
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container'
}
});
$(".test").change(function() {
var value = this.getAttribute("value");
while (chart.series.length > 0) {
chart.series[0].remove(true);
}
if (value == 'a') {
chart.xAxis[0].update({categories: ['Jan', 'Feb', 'Mar']});
chart.yAxis[0].setTitle({ text: "name" });
chart.addSeries({
name: 'Rainfall11',
type: 'column',
data:array(comes from vb.net)
});
chart.addSeries({
name: 'Rainfall2',
type: 'column',
data: array2 (comes from vb.net)
});
chart.addSeries({
name: 'Rainfall3',
type: 'column',
color: '#FFA500',
data: array3 (comes from vb.net)
});
} else if (value == 'b') {
chart.yAxis[0].setTitle({ text: "first" });
} else if (value == 'c') {
chart.addSeries({
name: 'Rainfall5',
type: 'column',
data:array5
});
chart.addSeries({
name: 'Rainfall6',
type: 'column',
data:array6
});
} else {
alert("Error!");
}
});});
问题是,我无法从服务器获取数据,因为当我刷新页面时它不会加载它,它只在 javascript 中调用它。我有谷歌这个,感觉它与更新面板有关,使用重绘方法,或使用 RegisterClientScriptBlock 。
这是我从 msdn 得到的,用于 RegisterClientScriptBlock :
Dim script As String
script = _
"function ToggleItem(id)" & _
" {" & _
" var elem = $get('div'+id);" & _
" if (elem)" & _
" {" & _
" if (elem.style.display != 'block') " & _
" {" & _
" elem.style.display = 'block';" & _
" elem.style.visibility = 'visible';" & _
" } " & _
" else" & _
" {" & _
" elem.style.display = 'none';" & _
" elem.style.visibility = 'hidden';" & _
" }" & _
" }" & _
" }"
ScriptManager.RegisterClientScriptBlock( _
Me, _
GetType(Page), _
"ToggleScript", _
script, _
True)
我的javascript代码在里面吗?