点击提交页面不会改变,并且数据库中店铺信息也没有改变..

点击提交页面不会改变,并且数据库中店铺信息也没有改变..


$(function () {
   var shopId=getQueryString('shopId');
   var isEdit=shopId?true:false;

   var initUrl = '/o2o_war_exploded/shopadmin/getshopinitinfo';
   var registerShopUrl = '/o2o_war_exploded/shopadmin/registershop';
   var shopInfoUrl='/o2o_war_exploded/shopadmin/getshopbyid?shopId='+shopId;
   var editShopUrl='/o2o_war_exploded/shopadmin/modifyshop';

   if( !isEdit){
       getShopInitInfo();
   }else{
       getShopInfo(shopId);
   }


   function getShopInfo(shopId) {
       $.getJSON(shopInfoUrl,function (data) {
           if(data.success){
               var shop=data.shop;
               $('#shop-name').val(shop.shopName);
               $('#shop-addr').val(shop.shopAddr);
               $('#shop-phone').val(shop.phone);
               $('#shop-desc').val(shop.shopDesc);
               var shopCategory='<option data-id="'
                   + shop.shopCategory.shopCategoryId +'"selected>'
                   + shop.shopCategory.shopCategoryName + '</option>';
               var tempAreaHtml = '';
               data.areaList.map(function (item,index) {
                   tempAreaHtml += '<option data- id="' + item.areaId + '">'
                       + item.areaName + '</option>';
               });

               $('#shop-category').html(shopCategory);
               $('#shop-category').attr('disabled','disabled');
               $('#area').html(tempAreaHtml);
               $("#area option[data-id=]'"+ shop.area.areaId+ "']").attr("selected","selected");
           }
       });
   }

   function getShopInitInfo() {
       $.getJSON(initUrl,function (data) {
           if(data.success){
               var tempHtml = '';
               var tempAreaHtml = '';
               data.shopCategoryList.map(function(item,index){
                   tempHtml += '<option data-id="'+item.shopCategoryId +'">'
                       +item.shopCategoryName + '</option>>';
               })
               data.areaList.map(function (item, index) {
                   tempAreaHtml += '<option data-id="' + item.areaId +'">'
                       + item.areaName +'</option>';
               })

               $('#shop-category').html(tempHtml);
               $('#area').html(tempAreaHtml);
           }
       });

      // 提交按钮的事件响应,分别对店铺注册和编辑操作做不同响应
       $('#submit').click(function () {
           var shop ={};
           if (isEdit){
               shop.shopId =shopId;
           }

           //shop.shopName = $('#shop-name').val();
           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 : $('#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);
           formData.append('shopStr',JSON.stringify(shop));
           var verifyCodeActual =$('#j_captcha').val();
           if(!verifyCodeActual){
               $.toast("请输入验证码!");
               return;
           }
           formData.append('verifyCodeActual',verifyCodeActual);
           $.ajax({
              url : (isEdit? editShopUrl: registerShopUrl),
              type : 'POST',
              data : formData,
              contentType : false,
              processData : false,
              cache : false,
              success : function (data) {
                  if(data.success()){
                      $.toast('提交成功!!');
                  }else{
                      $.toast('提交失败!!' + data.errMsg);
                  }
                  $('#captcha_img').click();
              }
           });

       })
   }

})

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
weixin_慕虎5578550 2019-09-25 11:47:44

$('#submit').click(function () 提交函数放到了  function getShopInitInfo() 里面,当然无效咯,修改执行的是function getShopInfo(shopId) 。

把它拿出来就好了,另外这个js还有两个问题:

1、区域无法自动选取已有的。代码需要完善:

data.areaList.map(function (item, index) {
    if (item.areaId == shop.area.areaId) {
        tempAreaHtml += '<option data-id="' + item.areaId + '"selected>'
            + item.areaName + '</option>';
    } else {
        tempAreaHtml += '<option data-id="' + item.areaId + '">'
            + item.areaName + '</option>';
    }
});

2、提交函数里面没有传shopId,加上:

shop.shopId = shopId;


好帮手慕柯南 2019-07-14 14:42:07

建议同学按一下思路来查找一下问题:

  1. 在浏览器的控制台打印输出一下formData

  2. 在后台的修改方法处,打断点看是否进入了要进的方法,接下来看数据是否传入了,如果传入了,同学跟着断点往下走看哪一步写错了。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 Demnz #1
    自己测试了一下,无论是修改中的提交还是新增店铺中的提交,都没有用,点击提交页面不会发生改变,并且不会对数据库中数据有影响,懵逼了已经......
    2019-07-14 15:19:06
  • 好帮手慕柯南 回复 提问者 Demnz #2
    同学你好!老师在这个问答下面回复你了http://class.imooc.com/course/qadetail/134047 祝学习愉快~
    2019-07-14 15:48:45
好帮手慕柯南 2019-07-14 11:52:58

同学你好!控制台是否报错呢,建议同学贴一下报错信息。

祝学习愉快~

  • 提问者 Demnz #1
    控制台没有报错信息,我也检查了代码,和老师源码好像没什么区别,不知道是不是我js中的submit出错了
    2019-07-14 12:10:17
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师