将全局变量传递给jquery函数

时间:2015-07-16 01:13:14

标签: jquery highcharts

我有一个高图脚本,可以从2个外部.csv文件创建图表。 (这部分一切运作良好)。 我正在尝试创建一个列表,该列表将使用一组单独的文件加载不同的图形。最终结果将是左侧的文件集列表,当您单击每个文件集时,它将被绘制。 尽管将file1,file2设置为全局变量,但我似乎无法将它们恢复到main()函数中。即,没有新的图形加载,原始遗骸。 我试过从choose()函数调用main(),但是它说它没有定义。 我不知道该怎么办。

<head><script>
var file1 = 'file1.csv'
var file2 = 'file2.csv'
function choose(choice,choice2,){file1 = choice;file2 = choice2}

$(function main() {
    $.get(file1, function(csv) {
    chart1 = new Highcharts.Chart({
....etc
</script></head>

<body><div>
<li><a id="1" onClick="choose('file1.csv','file2.csv')">FileSet1</a></li>
<li><a id="2" onClick="choose('file3.csv','file4.csv')">FileSet2</a></li>

1 个答案:

答案 0 :(得分:0)

您在事件处理程序中传入一个字符串。你对此有何看法?

var str = 'file1.csv,file2.csv';
alert(str);

您需要添加引号

onClick="choose('file1.csv', 'file2.csv')"

现在,由于您更改了值,因此具有Highcharts的原始代码不会神奇地运行。您需要调用一个函数并让它再次运行代码。