0 0

帮忙解决JAVA 关于二维数组传值到JS10

本人是新手,可能是提问题,并没有提供全面的信息,如果需要的话,请提出,我会完善的!
首先,我使用的是hibernate+struts
首先我从数据库提取数据如下:
在.JSP中
   
  <%
       int emp_id=(Integer)session.getAttribute("emp_id");
       IoGoodsBs iobs= new IoGoodsBs();
       List<IoGoods> list= null;
       int ioless=1;
       list=iobs.queryIoGoodsByIoless(emp_id,ioless);
       int size=list.size();
      
      String[][] li= new String[size][2];     
         for(int i=0;i<list.size();i++)
       {
         IoGoods iogs=(IoGoods)list.get(i);
          li[i][0]=iogs.getGoodsname();
          li[i][1]=String.valueOf(iogs.getQuantity());  // iogs.getQuantity()是INT 类型的. 
       
       }
      
%>

本人想将 li 这个二维数组传值进下面的JS中的, myDate中,请问,应该怎么做.才能让我取得的二维数组li同JS中myDate一样.
JS如下:
<script type="text/javascript">
var myData = new Array(['U.S.A.', 69.5], ['Canada', 2.8], ['Japan & SE.Asia', 5.6], ['Aus. & NZ.', 2.8], ['E.U.', 14.6], ['Others Europe', 2.7], ['Others', 1.9],['wwei',1.2]);
var colors = ['#FA5E1F', '#FDCB3F', '#71D743', '#D23333', '#BAE73F', '#AB7B55', '#B381C9'];
var myChart = new JSChart('graph', 'bar');
myChart.setDataArray(myData);
myChart.colorizeBars(colors);
myChart.setTitle('Host distribution per macroareas');
myChart.setTitleColor('#8E8E8E');
myChart.setAxisNameX('Region');
myChart.setAxisNameY('%');
myChart.setAxisColor('#c6c6c6');
myChart.setAxisWidth(1);
myChart.setAxisNameColor('#9a9a9a');
myChart.setAxisValuesColor('#939393');
myChart.setAxisPaddingTop(60);
myChart.setAxisPaddingLeft(50);
myChart.setAxisPaddingBottom(60);
myChart.setTextPaddingBottom(20);
myChart.setTextPaddingLeft(15);
myChart.setTitleFontSize(11);
myChart.setBarBorderWidth(0);
myChart.setBarSpacingRatio(50);
myChart.setBarValuesColor('#737373');
myChart.setGrid(false);
myChart.setSize(616, 321);
myChart.setBackgroundImage('chart_bg.jpg');
myChart.draw();
</script>


感谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

2009年4月19日 00:46

2个答案 按时间排序 按投票排序

0 0

采纳的答案

这个就是把java中的数组转换成json字符串传给js就能解析,

看看这个工具框架,java 和 json之间的转换
把这个包下载下来加到工程。地址:http://sourceforge.net/projects/stringtree



在.JSP中
jsp中导入    import org.stringtree.json.JSONWriter;

<%
       int emp_id=(Integer)session.getAttribute("emp_id");
       IoGoodsBs iobs= new IoGoodsBs();
       List<IoGoods> list= null;
       int ioless=1;
       list=iobs.queryIoGoodsByIoless(emp_id,ioless);
       int size=list.size();
      
      String[][] li= new String[size][2];     
         for(int i=0;i<list.size();i++)
       {
         IoGoods iogs=(IoGoods)list.get(i);
          li[i][0]=iogs.getGoodsname();
          li[i][1]=String.valueOf(iogs.getQuantity());  // iogs.getQuantity()是INT 类型的. 
       
       }
       JSONWriter writer = new JSONWriter();
       String jsonStr = writer.write(li);
%>

本人想将 li 这个二维数组传值进下面的JS中的, myDate中,请问,应该怎么做.才能让我取得的二维数组li同JS中myDate一样.
JS如下:
<script type="text/javascript">
var myData = <%=jsonStr %>;
var colors = ['#FA5E1F', '#FDCB3F', '#71D743', '#D23333', '#BAE73F', '#AB7B55', '#B381C9'];
var myChart = new JSChart('graph', 'bar');
myChart.setDataArray(myData);
myChart.colorizeBars(colors);
myChart.setTitle('Host distribution per macroareas');
myChart.setTitleColor('#8E8E8E');
myChart.setAxisNameX('Region');
myChart.setAxisNameY('%');
myChart.setAxisColor('#c6c6c6');
myChart.setAxisWidth(1);
myChart.setAxisNameColor('#9a9a9a');
myChart.setAxisValuesColor('#939393');
myChart.setAxisPaddingTop(60);
myChart.setAxisPaddingLeft(50);
myChart.setAxisPaddingBottom(60);
myChart.setTextPaddingBottom(20);
myChart.setTextPaddingLeft(15);
myChart.setTitleFontSize(11);
myChart.setBarBorderWidth(0);
myChart.setBarSpacingRatio(50);
myChart.setBarValuesColor('#737373');
myChart.setGrid(false);
myChart.setSize(616, 321);
myChart.setBackgroundImage('chart_bg.jpg');
myChart.draw();
</script>

2009年4月19日 09:43
0 0

1、首先将你的2维数组放到request的中如:reqeust.setAttribute("result",li);
2、在jsp页面中从request中取出,如下:

   <%
   String[][] result = (String[][])request.getAttribute("result");
   %>

   var myData = new Array();
   <%for(int i=0;i<result.length ;i++){%>
          myData[<%=i%>][0] = <%=result[i][0]%>;
          myData[<%=i%>][1] = <%=result[i][1]%>;
    <%}%>


这样就可以给你的js的二维数组赋值了。

2009年4月19日 09:23

相关推荐

    java实现二维数组转json的方法示例

    在Java编程中,将二维数组转换为JSON格式的数据是常见的数据处理需求,特别是在处理Web服务或数据交换时。本文将详细讲解如何使用Java实现这一功能,以及涉及的相关操作技巧。 首先,我们需要理解二维数组和JSON的...

    二维数组转json的java源码

    本篇文章将深入探讨如何使用Java实现二维数组到JSON的转换。 首先,我们需要了解二维数组的基本概念。二维数组可以看作是由多个一维数组组成的数组,类似于表格,每一行是一维数组,所有行构成了二维数组。例如,一...

    java_二维数组冒泡行列排序源代码

    使用冒泡排序实现的java语言编写的关于二维数组的排序,实现了行、列的排序输出。

    java 将一个二维数组存到txt文件里,然后再读取

    ### Java将一个二维数组存到TXT文件里,然后再读取 在Java编程中,经常会遇到需要将数据存储到文件中的需求。例如,在本例中,我们需要将一个二维数组中的数据写入到TXT文件中,然后再次从该TXT文件中读取这些数据...

    java中二维数组删除一行

    1.方便获得一个字符串表示的矩阵 2.删除二维数组中的第几行 3.删除二维数组中与所要删除行内容一样的此行 4.获得此二维数组

    Java二维数组实现简单Map

    在Java编程语言中,二维数组可以被用来模拟简单的Map数据结构。Map是一种键值对的集合,其中每个键(Key)都是唯一的,并且与一个值(Value)相关联。尽管Java提供了内置的Map接口(如HashMap、TreeMap等),但有时...

    将二维数组进行线性插值

    4. **生成新数据**:将插值后的值插入到原有的二维数组中,创建一个新的二维数组。 5. **写入TXT文件**:使用编程语言提供的功能,将更新后的二维数组以TXT格式写回文件。可以设定合适的输出格式,如逗号分隔值(CSV...

    二维数组排序

    // 二维数组冒泡排序 public static void main(String[] args) { int i=0, j=0, temp = 0; int[][] nums1 = { { 34, 1, 22, 5 }, { 28, 98, 15, 32 }, { 33, -5, 17, 41 } }; int rows = nums1.length; //二维...

    java 将二维数组顺时针,逆时针排序

    总之,理解和实现二维数组的顺时针和逆时针排序是Java编程中的一个重要技能,它涉及到数组操作、排序算法以及问题解决策略等多个方面。通过熟练掌握这些知识,开发者可以在处理复杂数据结构时更加游刃有余。

    二维数组如何进行冒泡排序

    对于二维数组的排序,通常的做法是先将其转换为一维数组,然后再利用冒泡排序对一维数组进行排序,最后再将排序后的一维数组还原为二维数组。这种方法不仅易于理解和实现,而且能够充分利用已有的排序算法。 1. **...

    java 二维数组编的扫雷小游戏

    JAVA 用二维数组编写的一个扫雷游戏,绝对可以用!界面简洁美观!

    JNA调用C++动态库,传入二维数组,通过C++返回二维数组,java调用C++完整案例

    例如,如果你有一个C++函数接收二维数组并返回二维数组,你可以这样在Java中定义: ```java public interface MyDLL extends Library { // 定义C++函数原型 int processArray(int[][] input, int[][] output); } ...

    java二维数组的理解

    ### Java二维数组的理解 在Java中,二维数组是一种特殊的数组结构,它由多个一维数组组成,形成一个矩阵形式的数据结构。本篇文章旨在深入解析Java二维数组的基本概念、定义方式、初始化过程及其常见操作,同时重点...

    java动态二维数组的实现

    关于java动态二维数组的实现 可以参考下

    C++一维数组二维数组写入txt,从txt中读取数据存到一维数组二维数组

    本教程将重点讲解如何使用C++将一维和二维数组的数据写入文本文件(txt),以及如何从txt文件中读取数据并存储到一维和二维数组中。数组在C++中是基本的数据结构,而指针则为动态操作提供了便利。以下是一些关键知识...

    js 二维数组 遍历

    js 二维数组 遍历 轻松实现实现 二维数组输出 包含高级for循环

    java二维数组

    java二维数组 java二维数组是一种数据结构,用于存储和操作二维数据。以下是java中二维数组的基本概念和操作。 创建二维数组 在java中,创建二维数组有三种方式: 1. 直接分配:`int arr[][] = new int[3][5];` ...

    易语言学习进阶二维数组赋值

    下面是一个简单的易语言二维数组赋值源码示例,它创建一个二维数组并填充1到9的数字: ```易语言 .整数型 数组名[3, 3] .循环(3) .循环(3) 数组名[循环索引1, 循环索引2] = 循环索引1 * 3 + 循环索引2 + 1 ...

    C#实现对二维数组排序的方法

    接着,将二维数组的数据逐行加载到`DataTable`中。完成数据加载后,使用`dt.Select()`方法按照指定的列索引和排序顺序对行进行排序。最后,将排序后的`DataRow`对象中的值重新映射回原始的二维数组。 这个方法的...

    52.java二维数组静态初始化.zip

    52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化.zip52.java二维数组静态初始化....

Global site tag (gtag.js) - Google Analytics