没看懂这一段是怎么读取后台店铺类别和区域信息的

来源:3-2 店铺注册之js实现

qq_森林中的小熊_0

2019-11-24 00:03:18

$.getJSON(initUrl,function (data){
    if (data.success) {
        var tempHtml = "";
        var tempAreaHtml = "";
        data.shopCatagoryList.map(function(item,index){
            tempHtml +="<option data-id="+item.shopCategoryId+">"+ item.shopCategoryIdName +
                "</option>";
        });
        data.areaList.map(function(item, index) {
            tempAreaHtml += '<option data-id="' + item.areaId + '">'
                + item.areaName + '</option>';
        });
        $('#shop-category').html(tempHtml);
        $('#area').html(tempAreaHtml);
    }
});

老师,帮忙解释一下这一段是怎么个流程吧,实在是看不懂这个js

写回答

2回答

芝芝兰兰

2019-11-24

同学你好。这个可以类比Ajax。传统的Ajax格式如下:

$.ajax({
        "url":"<%=basePath%>/XXX", //url指定了要发送请求的地址
	"data" : XXX, //指定了要传递过去的数据
	"type" : "post", //指定请求传递方式
	"dataType" : "json", //预期服务器返回的数据类型
	"success" : function(data) { //success指定了成功返回后执行的函数
	    //这里function内的date是后台输出的数据,自动用json格式解析后产生的js对象
	}
});

代表从initUrl获取JSON,其实是简化的Ajax,或者说是Ajax的又一次封装

//这里getJSON就代表预期返回的数据类型为JSON,initUrl是发送请求的地址
$.getJSON(initUrl,function (data){
    //function内的data是从后台接收到的数据自动用json格式解析后产生的js对象
    if (data.success) {
        //data.success是在后台放入的参数
    }
});

后面一节中实现了对应的Controller,这里返回的ModelMap就是function内的data。所以通过if (data.success)就可以判断后台中是否产生了错误,从而依此进行处理。

http://img.mukewang.com/climg/5dd9ec0a098a805010700509.jpg

如果解答了同学的疑问,望采纳~

祝学习愉快~

1

qq_森林中的小熊_0

提问者

2019-11-24

$.getJSON(shopInfoUrl, function(data) {
    if (data.success) {

特别是这个data以及data.success是从哪里来的,它想表达什么意思

0

0 学习 · 8263 问题

查看课程