$.ajax请求在html页面拿不到数据

最近搭了一个SSM框架,但是前台页面是html,所以不能用jsp的那套标签去取数据,但是数据可以拿到,却怎么也显示不到页面上,经一个大神指点在$.ajax中加入了这样一行代码,问题完美解决。

 var retData = eval("(" + data + ")");

以上代码表示将拿到的数据转换成json对象的格式,然后就可以.来获取想要的数据了。。所谓json对象的格式,就是后台返回给前台的数据是一个json字符串,我们在页面中object.name这种方式是取不到数据的,因为它是字符串,点不出方法,此时我们就要将该字符串转换成json对象,然后通过json的对象去点出属性(但是有时不加这行代码也可以取出)。其实查看数据是否为json字符串还是json对象也非常简单,将数据alert(数据)如果弹框显示的是Object,那就是对象,其他的就直接显示数据了。以下附上html及controller代码。

html

 $(function () {

       alert("页面加载完成后自动运行函数............");

        //  全局页面加载函数,就是,页面完全加载完成后,js就自动发送请求到后台查询数据
        // 所以就是ajax的几种发送方式,
        // 即,直接写 $.get(),$.post(),$.ajax()等



       /* // 基本功能菜单加载
        $.post("/mavenweb/customer/ht.do",function(data){
           // var retData = eval("(" + data + ")");
            alert(data);
            $("#username").val(data.cust_name);
            $("#address").val(data.cust_address);
        },"json");*/

        $.ajax({
            type:"get",
            url:"/mavenweb/customer/ht.do",
            dateType:"json",
            success:function (data) {
                var retData = eval("(" + data + ")");
                $("#username").val(retData.cust_name);
                $("#address").val(retData.cust_address);
            }
        });

    });

controller:@ResponseBody该注解会自动帮我们将java对象与json格式之间进行转换

  @RequestMapping("/customer/ht")
    @ResponseBody
    public Customer htm(HttpServletResponse response) throws Exception{
        Customer customer = customerService.getCustomer();
        System.out.print("html..............");
       return customer;
    }

附:jquery函数的全局事件,然后前端加载完页面后(各种样式等等),然后js再发送请求,加载数据
效果:打开页面后直接显示数据。
其实前端页面是将css样式,图片,引用的文件等都加载完之后,再进行执行js的函数的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值