回填修改数据

开发工具与关键技术:MVC
作者:文泽钦
撰写时间:2019年 6 月 27 日
现在做一个修改,修改的模态框前端布局的代码量有点多,不过影响不大,布局一般来说大家都会写,那么我们现在就先把需要修改的数据查询回填这个部分先。
我们现在做的是VIP用户修改部分,所以先在VIP表那给个监听事件,监听获取到了哪一行数据。

//获取行事件,vip表管理
 layuiTable.on('row(tabVip)', function (obj)
  {
     var data = obj.data;//获取点击行数据
     
			//控制台输出看看是否能获取到VIPid
			console.log(data);
		     //标注选中样式
		     obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');
		     //***单击选中单选框
		     obj.tr.find('div.layui-unselect.layui-form-radio')[0].click();
		                    var vipId = data.VipID;//vip类型id
		                    $("#VipID").val(vipId);
		                    //控制台输出看看是否能获取到VIPid
		                    console.log(vipId);
                }); 

一会我们就是根据VIP的id来回填VIP用户对应的信息,所以我们可以在这里输出测试看能不能获取到VIP的id。打开页面点击一条VIP数据,然后检查看有没有在控制台输出VIP的对应VIPid。要是不确定这个id是不是刚刚点击那条数据的id可以先把data输出看看,data是获取一整行数据。
在这里插入图片描述
这个修改按钮是放在外面的所以要先接收到VIPid,否则提醒用户选择需要修改的VIP用户。Modification()这个是修改按钮的点击事件。

//修改VIP模态框
function Modification(vipId) 
{
            //获取选中的行
            var checkStatus = layuiTable.checkStatus("tabVip");
            //控制台输出
            console.log(checkStatus);
            
            //当前行的长度大于零,回填数据,打开模态框
            if (checkStatus.data.length > 0) 
            {
                var vipId = checkStatus.data[0].VipID;//vip类型id
                //重置表单
                $("#formInModification").resetForm();
                //查询VIP信息,回填数据
                $.post("XiuGaiVIP", { VipID: vipId }, function (stuData)
                 {
                    //输出看值是否根据id查询出VIP信息
                    //console.log(stuData);
                   
                    //下拉框数据回填
                    $("#UsVIPTierID").change(function ()
                     {
                        //调用加载事件,下拉框改变触发数据改变
                        UsXialaiKuang();
                    });
                    //其他表单数据回填
                    loadDatatoForm("formInModification", stuData);
                });
                
                //点击空白处不会关闭模态框
                $('#modUpModification').modal({
                    backdrop: false,
                    keyboard: false
                });
                //弹出模态层
                $("#modUpModification").modal("show");
          } else {
            layer.msg("请选择对应的VIP用户!", { icon: 0, skin: "layui-layer-molv" });
           }
      }

上面代码的意思是,获取到VIP表中的某一条数据,当这个checkStatus值的长度大于零时,则获取这个值的id,然后是请求路径,根据这个VIP的id把对应的VIP信息查询并且回填。否则当这个checkStatus长度小于零则提醒用户选择需要修改的数据。
在这里插入图片描述
点击修改时可以看控制台输出看到这个checkStatus值的长度是大于零的,并且是把上面获取到的VIP信息也输出了,然后弹出模态框。这里大家也看到了报错,这个报错是路径错,这个路径是根据VIPid查询VIP信息的路径,上面控制台输出的值是不可以直接回填数据的,所以我们还得去控制器那边写查询方法。

    // 根据id查询VIP信息
    public ActionResult XiuGaiVIP(int VipID)
    {
      try
      {
          NoticeVo VipInfo = (from tbVip in myModels.B_VIP
                 join tbVipTier in myModels.B_VIPTier on tbVip.VIPTierID   equals tbVipTier.VIPTierID
                               where tbVip.VipID == VipID
                               select new NoticeVo
                               {
                               VipID = tbVip.VipID,//id
                               VipCardNumber = tbVip.VipCardNumber,//卡号
                               VipName = tbVip.VipName,//姓名
                               VIPTierID = tbVip.VIPTierID,//vip类别
                               Openacarddate = tbVip.Openacarddate.ToString(),//开卡日
                               Sumofconsumption = tbVip.Sumofconsumption,//消费金额
                               Phone = tbVip.Phone,//手机
                               Birthday = tbVip.Birthday.ToString(),//生日
                               Recentlyconsumption = tbVip.Recentlyconsumption.ToString(),//最近消费
                               Integral = tbVip.Integral,//积分
                               Remarks = tbVip.Remarks,//备注
                               TierName = tbVipTier.TierName,//VIP类型
                               Abatement = tbVipTier.Abatement//折扣
                                    }).Single();
                return Json(VipInfo, JsonRequestBehavior.AllowGet);
            }
            catch (Exception e)
            {
                Console.Write(e);
                return Json("error", JsonRequestBehavior.AllowGet);
            }
        }

先查询数据库中的VIP表,再连接VIP类别表,然后把需要回填对应的数据查询出来,然后返回到页面就可以了。
在这里插入图片描述
VIP修改数据回填成功,下次写VIP修改保存。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值