• kindeditor


    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    <link href="/js/kindeditor-4.1.10/themes/default/default.css" type="text/css" rel="stylesheet">
    <script type="text/javascript" charset="utf-8" src="/js/kindeditor-4.1.10/kindeditor-all-min.js"></script>
    <script type="text/javascript" charset="utf-8" src="/js/kindeditor-4.1.10/lang/zh_CN.js"></script>
    <div style="padding:10px 10px 10px 10px">
       <form id="itemAddForm" class="itemForm" method="post">
           <table cellpadding="5">
               <tr>
                   <td>商品类目:</td>
                   <td>
                      <a href="javascript:void(0)" class="easyui-linkbutton selectItemCat">选择类目</a>
                      <span ></span>
                      <input type="hidden" name="cid" style=" 280px;"></input>
                   </td>
               </tr>
               <tr>
                   <td>商品标题:</td>
                   <td><input class="easyui-textbox" type="text" name="title" data-options="required:true" style=" 280px;"></input></td>
               </tr>
               <tr>
                   <td>商品卖点:</td>
                   <td><input class="easyui-textbox" name="sellPoint" data-options="multiline:true,validType:'length[0,150]'" style="height:60px; 280px;"></input></td>
               </tr>
               <tr>
                   <td>商品价格:</td>
                   <td><input class="easyui-numberbox" type="text" name="price" data-options="min:1,max:99999999,precision:2,required:true" />
                   </td>
               </tr>
               <tr>
                   <td>库存数量:</td>
                   <td><input class="easyui-numberbox" type="text" name="num" data-options="min:1,max:99999999,precision:0,required:true" /></td>
               </tr>
               <tr>
                   <td>条形码:</td>
                   <td>
                       <input class="easyui-textbox" type="text" name="barcode" data-options="validType:'length[1,30]'" />
                   </td>
               </tr>
               <tr>
                   <td>商品图片:</td>
                   <td>
                       <a href="javascript:void(0)" class="easyui-linkbutton picFileUpload">上传图片</a>
                       <div class="pics"><ul></ul></div>
                        <input type="hidden" name="image"/>
                   </td>
               </tr>
               <tr>
                   <td>商品描述:</td>
                   <td>
                       <textarea style="800px;height:300px;visibility:hidden;" name="desc"></textarea>
                   </td>
               </tr>
               <tr class="params hide">
                  <td>商品规格:</td>
                  <td>
                     
                  </td>
               </tr>
           </table>
           <input type="hidden" name="itemParams"/>
       </form>
       <div style="padding:5px">
           <a href="javascript:void(0)" class="easyui-linkbutton" onclick="submitForm()">提交</a>
           <a href="javascript:void(0)" class="easyui-linkbutton" onclick="clearForm()">重置</a>
       </div>
    </div>
    <script type="text/javascript">
       //编辑器参数
       kingEditorParams = {
          filePostName  : "uploadFile",  //上传的文件名 
          uploadJson : '/rest/pic/upload', //上传的路径
          dir : "image"   //上传的文件类型
       };
       
       var itemAddEditor ;
       
       //页面加载完时执行以下逻辑
       $(function(){
          //创建富文本编辑器
          itemAddEditor = KindEditor.create("#itemAddForm [name=desc]", kingEditorParams);
          //初始化类目选择
          initItemCat();
          //初始化图片上传
          initPicUpload();
       });
       
       //提交商品信息到后台
       function submitForm(){
          //校验表单
          if(!$('#itemAddForm').form('validate')){
             $.messager.alert('提示','表单还未填写完成!');
             return ;
          }
          
          //把富文本编辑器编辑区域的html代码。同步到多行文本中,向后台提交的是多行文本
          //因为编辑器的编辑区域是div标签,不能提交
          //alert($("#itemAddForm [name=desc]").val());
          itemAddEditor.sync();
            //alert($("#itemAddForm [name=desc]").val());
          //提交到后台的RESTful
          $.ajax({
             type: "POST",
             url: "/rest/item",
             data: $("#itemAddForm").serialize(),
             success: function(msg){
                if(msg == "0"){
                   $.messager.alert('提示','新增商品成功!');  
                }else{
                   $.messager.alert('提示','新增商品发生异常,保存失败!'); 
                }
             },
             error: function(){
                $.messager.alert('提示','新增商品失败!');
             }
          });
       }
       
       function clearForm(){
          $('#itemAddForm').form('reset');
          itemAddEditor.html('');
       }
       
       //类目选择初始化
       function initItemCat(){
          //获取class为selectItemCat的元素,其实就是类目选择按钮
          var selectItemCat = $(".selectItemCat");
          //给类目选择按钮增加点击事件
              selectItemCat.click(function(){
                 //添加div标签,并设置css属性
             //在div标签里面添加ul标签,并打开窗口
                 $("<div>").css({padding:"5px"}).html("<ul>")
                 .window({
                    //窗口属性设置
                    '500',
                    height:"450",
                    modal:true,
                    closed:true,
                    iconCls:'icon-save',
                    title:'选择类目',
                    //当窗口打开后执行的逻辑
                     onOpen : function(){
                           //这里的this是打开的窗口本身
                        var _win = this;
                           //在窗口范围内,搜索ul标签
                    //找到ul标签,并创建EasyUI树
                        $("ul",_win).tree({
                           //异步树,发起请求,创建树
                           url:'/rest/item/cat',
                           method:'GET',
                           animate:true,
                           //给树上的所有节点添加点击事件
                           onClick : function(node){
                               //如果选中的节点为叶子节点
                              if($(this).tree("isLeaf",node.target)){
                                 // 填写到cid中
                                 selectItemCat.parent().find("[name=cid]").val(node.id);
                                 selectItemCat.next().text(node.text);
                                 $(_win).window('close');
                              }
                           }
                        });
                     },
                     onClose : function(){
                        $(this).window("destroy");
                     }
                 }).window('open');
              });
        }
       
       //图片上传初始化
       function initPicUpload(){
          //class选择器,其实获取到的就是上传图片按钮,绑定点击事件
               $(".picFileUpload").click(function(){
                  //id选择器,其实获取到的就是form表单
                  var form = $('#itemAddForm');
                  //加载多图片上传组件(可参考富文本编辑器的文档)
                  KindEditor.editor(kingEditorParams).loadPlugin('multiimage',function(){
                     //editor:就是编辑器本身
                     var editor = this;
                     //执行插件的逻辑,显示上传界面
                     editor.plugin.multiImageDialog({
                        //当点击“全部插入”按钮,执行以下逻辑
                        //urlList:多图片上传成功后,返回的图片url
                   clickFn : function(urlList) {
                      //获取class为pics的li的标签,删除,清空之前上传的图片
                      $(".pics li").remove();
                      //声明图片url数组
                      var imgArray = [];
                      //遍历返回的图片url
                      //i遍历的坐标,data遍历的变量
                      KindEditor.each(urlList, function(i, data) {
                         //从遍历的数据中获取url,其实就是获取图片的url
                         //放到声明数组中
                         imgArray.push(data.url);
                         //获取class为pics的ul标签
                         //在后面追加li标签,回显上传成功的图片
                         $(".pics ul").append("<li><a href='"+data.url+"' target='_blank'><img src='"+data.url+"' width='80' height='50' /></a></li>");
                      });
                      //获取name=image的元素,其实就是获取图片上传的input标签
                      //往input标签里赋值
                      //imgArray.join(","):把数据转为字符串,数组中的元素用,分隔
                      form.find("[name=image]").val(imgArray.join(","));
                      
                      //关闭上传界面
                      editor.hideDialog();
                   }
                });
                  });
               });
       }
       
    </script>
    package com.taotao.manager.controller;
    
    import com.taotao.manager.pojo.Content;
    import com.taotao.manager.service.ContentService;
    import com.taotao.manager.utils.TaoResult;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.bind.annotation.ResponseBody;
    
    /**
     * @author steven
     * @version 1.0
     * @description com.taotao.manager.controller
     * @date 2018-2-25
     */
    @Controller
    @RequestMapping("content")
    public class ContentController {
        @Autowired
        private ContentService contentService;
    
    //    type: "POST",
    //    url: "/rest/content",
        @RequestMapping(method = RequestMethod.POST)
        @ResponseBody
        public String add(Content content){
            String msg = "0";
            try {
                contentService.saveSelective(content);
            } catch (Exception e) {
                msg = "1";
                e.printStackTrace();
            }
            return msg;
        }
    
        ///rest/content?categoryId=2&page=1&rows=20
        @RequestMapping(method = RequestMethod.GET)
        @ResponseBody
        public TaoResult<Content> queryContent(Long categoryId,Integer page,Integer rows){
            TaoResult<Content> result = contentService.queryContent(categoryId, page, rows);
            return result;
        }
    }
  • 相关阅读:
    grep
    Ubuntu配置sun jdk
    mysqldump导出数据库表结构与数据至本地
    checkbox前后台使用
    MAC OS X 命令行提交本地项目到git
    前端参数传递错误之中英文字符
    微信支付之扫码支付(java版 native原生支付)
    jquery 取消 radio checked 属性,重新选中的问题解决
    消除父级元素对子级元素的点击事件影响
    mysql 双机热备注意事项
  • 原文地址:https://www.cnblogs.com/appc/p/8998521.html
Copyright © 2020-2023  润新知