layui 的form.on() 通过AJAX 传递一个变量

问题场景

执行的修改操作,根据数据id 查到要修改的数据,再把修改后的数据保存到数据库中。
为什么不直接用 JSON.stringify(data.field)?
因为修改的这条数据涉及到两张表的字段以及对应的是两个实体,后台controller 不太好接收数据,只能分开传递。
data应该是表单中的所有数据,尝试过data.field.urid 不行,只好用Jquery 取值

处理方法

前台

//监听提交
	          form.on('submit(add)', function(data){
	        	 var data={"urid":$("#urid").val(),"roleid": $('input[type=checkbox]:checked').val()};
	           
	            //发异步,把数据提交给php
				   $.ajax({  
				   type: "POST",
				   url: "${path}/admin/edit",
				   data:data,
				   dataType: "html",
				   success: function(response){
					   console.log(response);
				    	if(response.status==200){
				    		  layer.alert("修改成功", {icon: 6},function () {
				                  // 获得frame索引
				                  var index = parent.layer.getFrameIndex(window.name);
				                  //关闭当前frame
				                  parent.layer.close(index);
				              });
				    	}else{
				    		layer.msg("修改失败",{icon: 5});
				    	}
				   }
				   });
	 
	            return false;
	          });

注意ajax的dataType要设置为html,因为后台返回的是字符串,不是json数据
而且 contentType : ‘application/json’, 也不能写

后台

@RequestMapping("edit")
	@ResponseBody
	public String update(HttpServletRequest request,HttpServletResponse response) {
		String urid = request.getParameter("urid");
		String roleid = request.getParameter("roleid");
		return “”;
		}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

涛涛之海

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值