Jquery用ajax获取数据后在页面取不到,确定后台已经传数据过来了。

Jquery用ajax获取数据后在页面取不到,确定后台已经传数据过来了。,第1张

Jquery用ajax获取数据后在页面取不到,确定后台经传数据过来了是设置错误造成的,解决方法为:

1、打开HBuilderX工具,创建Web项目,新建静态页面ajaxhtml。

2、打开已新建的ajaxhtml文件,引入jquery文件并修改title标签内容。

3、在<body></body>标签中,插入一个div标签,并在div标签中插入一个table。

4、接着在项目中的data文件夹下,新建userjson文件。

5、打开userjson文件,添加json格式数据。

6、在<script></script>标签中,jquery初始化函数,调用ajax()方法读取json文件数据;返回成功后,将数据渲染加到table中。

 ajax调用java后台的方法,其实是通过url链接来访问,示例如下:

package comxxxxxxxxservlet;  

  

import javaioIOException;  

import javasqlConnection;  

import javasqlPreparedStatement;  

import javasqlResultSet;  

import javasqlSQLException;  

  

import javaxnamingContext;  

import javaxnamingInitialContext;  

import javaxservletServletException;  

import javaxservlet>

方式比较多:

    @RequestMapping(value = "/add", method = RequestMethodPOST)

    public ModelAndView insert(>    }    @RequestMapping(value = "/add", method = RequestMethodPOST)

    public ModelAndView insert(String name) {

        Systemoutprintln(name);

        return new ModelAndView(); 

    }public class User{

    private String name;

    private int age;

    //省略 get set

}

    @RequestMapping(value = "/add", method = RequestMethodPOST)

    public ModelAndView insert(User user) {

        Systemoutprintln(usergetName());

        return new ModelAndView(); 

    }

1 ObjectMapper objectMapper=new ObjectMapper(); orgcodehausjacksonmapObjectMapper;包下的

2 Object[] obj=objectMapperreadValue(数据,类型class)

比如你传的是json 数组对象,

String[] str=objectMapperreadValue(data,String[]class)

3 数组转成list

List list=ArraysasList(str);

4 额外提供小知识。ajax 认识json格式 ,所以后台json格式返回给ajax 不需要转化

如果前台格式是jquery, 比如常用的datagrid 中的就是jquery对象

这时候你需要把json转化成jquery对象

var da = eval('('+data+')'); data 为json格式数据

纯手打。我叫雷锋

后台解析ajax传递的数据,这主要看前端传递数据的格式,主要有以下几种常见的。

1、前端ajax传递表单数据,类似{name:'zhangsan',age:'17'}

后台只需利用requestgetParameter("name")形式即可获取对应的value值。

2、前端传递json数据格式。后台可以直接获取json字符串,然后利用相关的API转成对应的Java对象。或者直接利用springMvc的注解@RequestBody注解。

@RequestMapping(value = "/save")

public void save(@RequestBody User user){

}

这样传递的json数据会自动封装成user对象。

如果当前传递的是一个json数组,则后端可以定义一个VO对象,vo对象中存放一个userList。

public class UserVO{

private List<User> dataList;

}

@RequestMapping(value = "/save")

public void save(@RequestBody UserVO userVO){

你是说向后台发送还是从后台获取?

首先ajax不能发送字节流数据,如果要通过ajax获取的是的话,可以将数据进行base64编码,转成字符串再传输。浏览器可以直接使用这些数据显示的(IE6、7除外,IE8有限制)

接收ajax传过来的数据

客户端代码:

<script type="text/javascript">

function checkUser(ouser){

var uname=ouservalue;

if(!uname){

alert("用户名不能为空");

ouserfocus;

}

//发送请求到服务器,判断用户名是否存在

//Ajax代码实现

// 发送请求到服务器,判断用户名是否存在

// 请求字符串

/ar url = "servlet/doReguname="+uname; //GET 方式

var url = "servlet/doReg"; //POST 方式

var userinfo="uname="+uname;

// 1 创建XML>

以上就是关于Jquery用ajax获取数据后在页面取不到,确定后台已经传数据过来了。全部的内容,包括:Jquery用ajax获取数据后在页面取不到,确定后台已经传数据过来了。、ajax调用java后台的一个方法、ajax通过post方式传参给后台controller,怎么获取传过来的参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/9290310.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存