前后端联调问题
来源:4-13 前后端联调验证整体模块功能
_烟雨行舟_
2019-04-28
js代码:
// 提交按钮的事件响应,分别对店铺注册和编辑操作做不同响应
$('#submit').click(function()
{
// 创建shop对象
var shop = {};
// 获取表单里的数据并填充进对应的店铺属性中
shop.shopName = $('#shop-name').val();
shop.shopAddr = $('#shop-addr').val();
shop.phone = $('#shop-phone').val();
shop.shopDesc = $('#shop-desc').val();
//选择选定好的店铺类别
shop.shopCategory = {
shopCategoryId : $('#shop-category').find('option').not(function()
{
return !this.selected;
}).data('id')
};
//选择选定好的区域信息
shop.area= {
areaId:$('#shop-area').find('option').not(function()
{
return !this.selected;
}).data('id')
};
//获取上传的图片文件流
var shopImg = $('#shop-img')[0].files[0];
//生成表单对象,用于接收参数并传递给后台
var formData = new FormData();
//添加图片流进表单对象里
formData.append('shopImg',shopImg);
// 将shop json对象转成字符流保存至表单对象key为shopStr的的键值对里
formData.append('shopStr',JSON.stringify(shop));
//将文本框中验证码数据传入后台中去,做进一步处理
var verifyCodeActual = $('#j_captcha').val();
if (!verifyCodeActual) {
$.toast('请输入验证码!');
return;
}
formData.append('verifyCodeActual', verifyCodeActual);
// 将数据提交至后台处理相关操作
$.ajax
({
url:registerShopUrl, //发送请求的 URL
type:'POST',//请求的类型为POST
data:formData,//发送到服务器的数据是表单对象
contentType:false,//数据到服务器时所使用的内容类型
processData:false,//通过请求发送的数据不转换为查询字符串
cache:false,//浏览器不缓存被请求页面
success:function(data) //success指的是请求并成功返回信息,弹出对应消息提示
{
if(data.success)
{
$.toast('提交成功!');
}
else
{
$.toast('提交失败!'+data.errMsg);
}
//每次点击提交按钮后,自动更换验证码
$('#captcha_img').click();
}
});
});
在前端单步调试的时候,前端取某些值;为啥报这样的错误呀??
![![在这里输入代码
写回答
2回答
-
_烟雨行舟_
提问者
2019-04-30
好的,谢谢老师
00 -
翔仔
2019-04-29
同学好,areaId shopCategoryId没有被定义,需要你看看是不是后端没有返回区域以及店铺类别列表,如果返回了,看看前端能否接收到。
00
相似问题