ssh框架怎么用ajax? 我的action可以获得表单传过来的值,ajax获取的response

ssh框架怎么用ajax?我的action可以获得表单传过来的值,ajax获取的response是整个网页的html代码。我百度说要用json,但是没学过。有没有比较容易... ssh框架怎么用ajax?
我的action可以获得表单传过来的值,ajax获取的response是整个网页的html代码。我百度说要用json,但是没学过。有没有比较容易懂的方法让我知道下要怎么做
展开
 我来答
匿名用户
2016-10-18
展开全部

这种问题没必要来提个问,去百度一下 很多很多.

你在struts配置中action返回的应该是html页,所以ajax接收到的就是HTML代码,

你在struts配置中去掉 视图返回, 在servlet类中不写返回值,使用下面的代码

    HttpServletResponse response=ServletActionContext.getResponse();  
    /* 
     * 在调用getWriter之前未设置编码(既调用setContentType或者setCharacterEncoding方法设置编码), 
     * HttpServletResponse则会返回一个用默认的编码(既ISO-8859-1)编码的PrintWriter实例。这样就会 
     * 造成中文乱码。而且设置编码时必须在调用getWriter之前设置,不然是无效的。 
     * */  
    response.setContentType("text/html;charset=utf-8");  
    //response.setCharacterEncoding("UTF-8");  
    PrintWriter out = response.getWriter();  
    //JSON在传递过程中是普通字符串形式传递的,这里简单拼接一个做测试  
    String jsonString="{\"user\":{\"id\":\"123\",\"name\":\"张三\",\"say\":\"Hello , i am a action to print a json!\",\"password\":\"JSON\"},\"success\":true}";  
    out.println(jsonString);  
    out.flush();  
    out.close();
追问
谢谢,成功了。还有一个问题,如果我要返回一个集合,要怎么写?用来做模糊搜索的下拉检索用的。
追答
一样的使用 JSONArray 类 将list转换为json数组字符串 
例如 :
[{\"id\":\"123\",\"name\":\"张三\"},{\"id\":\"456\",\"name\":\"李四\"}]
js中使用eval函数 将json字符串转换成json对象,使用 result[0].id 的结果是"123"
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式