struts2 迭代器值到 javascript 数组
struts2 iterator values into javascript array
专家,我这里有个情况。我有 String[] 的 ArrayList(Struts2 操作 class 中的字符串数组的 ArrayList,我将这些值迭代到 javascript 以将这些值作为二维数组传递给 google 使用
绘制图表
var twodarray = ["<s:iterator value='res' status='status'>[<s:property/>]<s:if test='#status.last==false'>,</s:if></s:iterator>"];
然后使用
将该二维数组传递到google图中
var data = google.visualization.arrayToDataTable(twodarray);
图google如何接受参数例如
var data = google.visualization.arrayToDataTable([
['Month', 'Electronic', 'Electric'],
['2017/03', 400, 290],
['2017/04', 450, 275]
]);
当我使用
var data = google.visualization.arrayToDataTable(twodarray);
图表没有显示出来,但是当我显示 twodarray 的值或提醒 twodarray 时,它会给我准确的二维数组数据,如下所示。
var twodarray=[['Month', 'Electronic', 'Electric'],['2017/03', 400, 290],['2017/04', 450, 275]];
我想知道变量 twodarray 如何将值作为二维数组传递给 javascript
功能。它是作为字符串传递的吗?我试图将它作为二维数组传递。
你的变量声明
var twodarray = ["<s:iterator value='res' status='status'>[<s:property/>]<s:if test='#status.last==false'>,</s:if></s:iterator>"];
包含迭代器不需要的 "
- 因此它们可能最终出现在您的 javascript 变量中,使其成为一个字符串数组 - 或者更准确地说是一个包含一个字符串的数组。
删除 "
应该是诀窍:
var twodarray = [<s:iterator value='res' status='status'>[<s:property/>]<s:if test='#status.last==false'>,</s:if></s:iterator>];
同意 Jan 的解决方案。
一个建议,我将以这种方式创建 JS 数组:
var twodarray = [];
<s:iterator value='res' status='status'>
twodarray.push([<s:property/>]);
</s:iterator>
它使它在您的模板和 HTML 中更具可读性(没有繁重的昏迷条件和嵌套括号)
var twodarray = [];
twodarray.push(['Month', 'Electronic', 'Electric']);
twodarray.push(['2017/03', 400, 290]);
twodarray.push(['2017/04', 450, 275]);
专家,我这里有个情况。我有 String[] 的 ArrayList(Struts2 操作 class 中的字符串数组的 ArrayList,我将这些值迭代到 javascript 以将这些值作为二维数组传递给 google 使用
绘制图表var twodarray = ["<s:iterator value='res' status='status'>[<s:property/>]<s:if test='#status.last==false'>,</s:if></s:iterator>"];
然后使用
将该二维数组传递到google图中var data = google.visualization.arrayToDataTable(twodarray);
图google如何接受参数例如
var data = google.visualization.arrayToDataTable([
['Month', 'Electronic', 'Electric'],
['2017/03', 400, 290],
['2017/04', 450, 275]
]);
当我使用
var data = google.visualization.arrayToDataTable(twodarray);
图表没有显示出来,但是当我显示 twodarray 的值或提醒 twodarray 时,它会给我准确的二维数组数据,如下所示。
var twodarray=[['Month', 'Electronic', 'Electric'],['2017/03', 400, 290],['2017/04', 450, 275]];
我想知道变量 twodarray 如何将值作为二维数组传递给 javascript 功能。它是作为字符串传递的吗?我试图将它作为二维数组传递。
你的变量声明
var twodarray = ["<s:iterator value='res' status='status'>[<s:property/>]<s:if test='#status.last==false'>,</s:if></s:iterator>"];
包含迭代器不需要的 "
- 因此它们可能最终出现在您的 javascript 变量中,使其成为一个字符串数组 - 或者更准确地说是一个包含一个字符串的数组。
删除 "
应该是诀窍:
var twodarray = [<s:iterator value='res' status='status'>[<s:property/>]<s:if test='#status.last==false'>,</s:if></s:iterator>];
同意 Jan 的解决方案。 一个建议,我将以这种方式创建 JS 数组:
var twodarray = [];
<s:iterator value='res' status='status'>
twodarray.push([<s:property/>]);
</s:iterator>
它使它在您的模板和 HTML 中更具可读性(没有繁重的昏迷条件和嵌套括号)
var twodarray = [];
twodarray.push(['Month', 'Electronic', 'Electric']);
twodarray.push(['2017/03', 400, 290]);
twodarray.push(['2017/04', 450, 275]);