Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
文本控件未正确更新javascript_Javascript_Asp.net_Google Visualization - Fatal编程技术网

文本控件未正确更新javascript

文本控件未正确更新javascript,javascript,asp.net,google-visualization,Javascript,Asp.net,Google Visualization,我在页面中动态生成一个javascript块,结果如下所示: <script> google.load('visualization', '1', {'packages': ['corechart']}); function drawincomingCalls() { var data = google.visualization.arrayToDataTable([ ['Call Type', 'Call Amount'], ['Voice

我在页面中动态生成一个javascript块,结果如下所示:

<script>
google.load('visualization', '1', {'packages': ['corechart']});

function drawincomingCalls() {
    var data = google.visualization.arrayToDataTable([
        ['Call Type', 'Call Amount'],
        ['Voicemail', 12],
        ['Live Transfer', 23]
    ]);
    var options = {
        title: 'Incoming Calls',
        pieHole: 0.4
    };
    var chart = new google.visualization.PieChart(document.getElementById('incomingCallsChart'));
    chart.draw(data, options);
    console.log(data);
}
</script>

load('visualization','1',{'packages':['corechart']});
函数drawincomingCalls(){
var data=google.visualization.arrayToDataTable([
[“通话类型”、“通话金额”],
[‘语音信箱’,12],
[“实时传输”,23]
]);
变量选项={
标题:“来电”,
孔:0.4
};
var chart=new google.visualization.PieChart(document.getElementById('incomingCallsChart');
图表绘制(数据、选项);
控制台日志(数据);
}
这是通过从SQL数据库检索信息,然后为此脚本设置
literal
控件的文本属性(位于
UpdatePanel
设置为始终更新的范围内)生成的

从那里,我通过
ScriptManager.RegisterStartupScript调用
drawincomingCalls()
;当
IsPostBack
true
时,我也会在页面加载时执行此操作

这很好用;但是,当我更改“日期范围”控件以引起回发并重新生成脚本时,没有任何更改。旧图表已呈现。我知道脚本正在重新生成,因为如果我创建第二个
literal
控件并复制我正在执行的所有操作,但没有
标记,我可以读取纯文本中的更改,并看到值确实发生了更改

如代码片段所示,我已经将
数据
记录到控制台,并且它也没有改变

同样:对两个不同的文本(一个带有
标记,另一个没有标记)执行相同的操作,一个可以正常更新,而实际的脚本则不能

如果我通过Chrome控制台运行原始javascript,它会正确更新


这里有什么明显的遗漏吗?

用谷歌搜索ASP.NET Ajax为您创建的客户端
pageLoad()
Javascript方法-这将在部分回发时触发,因此请将您的代码放在那里(重新)生成图表。

希望此链接将帮助您的代码只在第一次工作。您必须让它知道ajax调用。比如在ajax响应上重新生成google图表。