更改为
response.setContentType("application/json"); 

解决方案 »

  1.   

    response.getWriter().write("[{PHONE=testPhone1, NAME=testName1, AGE=1, ID=1, EMAIL=testEmail1}]"); 
    应该是如下:
    [{"code":"001","name":"Name 1","addr":"Address 11","re":"test data"}]
      

  2.   

    这个试过了不行。我感觉加不加“”都是json啊,应该没关系吧。
      

  3.   

    另外,你最好用火狐浏览器的FIREBUG插件调试下,看下响应是否正确。
      

  4.   

    response.setContentType("application/json"); 
    以及
    都改下就可以了
      

  5.   

    将你servlet中的json换成我下面这个试试
    {"page":1,"total":239,"rows":[
    {"ID":"1","PHONE":"testPhone1","NAME":"testName1","AGE":"1","EMAIL":"testEmail1"},
    {"ID":"2","PHONE":"testPhone1","NAME":"testName1","AGE":"1","EMAIL":"testEmail1"},
    ]}
      

  6.   

    你用alert();打印一下,数据是否过来了。
      

  7.   

    你哪个地方接收数据,你就在那个地方比如alert(NAME).
      

  8.   

    要写在哪呢?上面有我HTML页面代码,是在HTML页面上写吗?
      

  9.   

    在67行的时候alert()一下,检查数据是否传过来了。
      

  10.   

    alert写在html页面的javascript标签内就可以了。火狐可以查看你的后台数据是否传到了前台,如果数据传过来了,那就是你这个组件用的不对
      

  11.   

    你先检测一下数据有没有传过来,如果可以就检查你的编写是否有误,我看到42行结尾多了一个逗号,这在火狐浏览器BUG模式下应该有提示的啊!!!
      

  12.   

    还在吗,我不知道在哪里alert,那个逗号 去掉了。
      

  13.   

    都该了 还是不行啊亲~~ application/json  [{"PHONE":"123","NAME":"name1","AGE":1,"ID":"1","EMAIL":"email1"}]
      

  14.   

    改完之后你用firebug看下返回回来的是不是application/json如果是的话在firebug下是可以看到json的
    看到了就说明后台没问题了,接下来就是你前台的问题了
      

  15.   

    补充:
    你这里的doGet和doPost方法是不一样的。你前台这个插件没用过jquery一般用的都是jqGrid。不过他的提交方式你没指定的话应该也是GET方式的。你得指定下他的提交方式POST。要不你doGet里面根本没数据。
      

  16.   

    有数据 看到了、 怎么alert出来呢
      

  17.   

    你自己用的这个flexigrid插件。肯定有提交方式的设置。就是个属性设置下。这个插件没用过。楼主在用插件的时候,最好先去看看此插件的api
      

  18.   

    你知道他们说的可以alert 看数据 在哪里alert吗?
      

  19.   

    如果后台不报错(必须确定程序调用了后台,并且成功返回),前台也不报错,只是不显示的时候。火狐是最后的调试工具
    装上firebug插件,启用后,你就能看到控制台,点开调用成功的URL地址,里面有个JSON选项,如果你返回的结果集符合JSON标准,就能生成JSON数据,否则不行。如果没有JSON数据,你可以看看你的响应信息,COPY出来,看看是哪里错啦。
      

  20.   

    没错,看到json 数据了。的确没问题但就是不显示
      

  21.   

    <table id="flex1" style=""></table> clss=""加上试试?!