layui.layedit富文本编辑器问题笔记

用layedit富文本编辑器遇到一些问题  做个笔记免得以后忘记

HTML

js代码

一开始是用的

 form.on('submit(btnSubmit)', function (data) {
        var ajax = new $ax(Feng.ctxPath + "/productType/addProductInfo", function (data) {
            Feng.success("添加成功!");
            window.location.href = Feng.ctxPath + '/productType'
        }, function (data) {
            Feng.error("添加失败!" + data.responseJSON.message)
        });
        ajax.set(data.field);
        ajax.start();
    });

 直接用from表单提交bean来传入后台 ,可是这种传值方式会使富文本编辑器里面的样式格式转义存入数据库如:;& lt;/p& gt;& lt;p& gt;;在页面数据回显的时候出现问题    处理方法没找到  所以用json格式传入后台会比较方便。就如下面这种方式:

  data.field.prodIntroduce = layedit.getContent(index01);
// alert(data.field.prodIntroduce);
  data.field.applyCond = layedit.getContent(index02);
  data.field.applyMaterial = layedit.getContent(index03);
// alert(JSON.stringify(data.field));
// alert(11);
     	 $.ajax({
                  url: Feng.ctxPath+'/productInfo/addProductInfo',
                  dataType: 'json',
                  contentType : 'application/json;charset=utf-8',// 缺少这个415
                  type: 'post',
                  data: JSON.stringify(data.field),// 缺少这个400
                  success: function (data) {
                	   Feng.success("添加成功!");
                     // 传给上个页面,刷新table用
                     admin.putTempData('formOk', true);
         
                     // 关掉对话框
                     admin.closeThisDialog();
                 }, function (data) {
                     Feng.error("添加失败!" + data.responseJSON.message)
                 }
     		 });

在后台接受时,参数前要加上@RequestBody这个注解来接受json,

controller代码

	@RequestMapping("/addProductInfo")
	@ResponseBody
	public ResponseData addProductInfo(@RequestBody ProductInfoParam productInfoParam) {
		this.productInfoService.addProductInfo(productInfoParam);
		return ResponseData.success();
	}

这样存入数据库的内容就是

XXXXX

这种格式的了  回显也比较方便!!

你可能感兴趣的:(笔记)