wangEditor富文本编辑器与layui图片上传

记录:js 显示默认的wangEditor富文本编辑器内容和图片
<style>body {background-color: #ffffff;}.layui-form-select dl{z-index:100000;}
</style>
<div class="layui-form layuimini-form"><div class="layui-form-item"><label class="layui-form-label">人员</label><div class="layui-input-inline"><select name="uid" lay-verify="required" lay-search="" id="uid" lay-filter="user"><option value="">请选择人员</option>{volist name="sh_user_data" id="vo"}<option value="{$vo.id}">{$vo.username}</option>{/volist}</select></div></div><div class="layui-form-item"><label class="layui-form-label">上传照片</label><div class="layui-upload"><input type="hidden" name="thumbnail" value="" id="thumbnail"><button type="button" class="layui-btn" id="test1">上传图片</button><div class="layui-upload-list"><img class="layui-upload-img" src="" style="margin-left: 150px;max-width:120px;" id="demo1" name="img"><p id="demoText"></p></div></div></div><div class="layui-form-item layui-form-text"><label class="layui-form-label">人员详情</label><div class="layui-input-block"><div id="editor" name="abstract"></div></div></div><div class="layui-form-item"><div class="layui-input-block"><button class="layui-btn layui-btn-normal" lay-submit lay-filter="saveBtn">确认保存</button></div></div>
</div>
<script src="__ADMINLIB__/wangEditor/wangEditor.js" charset="utf-8"></script>
<script src="__ADMINLIB__/layui-v2.5.5/layui.js" charset="utf-8"></script>
<script type="text/javascript">var E = window.wangEditor//  创建编辑器var editor = new E('#editor')// 关闭粘贴样式的过滤editor.customConfig.pasteFilterStyle = false// 忽略粘贴内容中的图片editor.customConfig.pasteIgnoreImg = false// 插入网络图片的回调editor.customConfig.linkImgCallback = function (url) {console.log(url) // url 即插入图片的地址}//  用户点击富文本区域会触发onfocus函数执行。editor.customConfig.onfocus = function () {console.log("进入回调")}//  用户离开富文本进行回调。editor.customConfig.onblur = function (html) {console.log('离开回调')}//  上传图片地址// editor.customConfig.uploadFileName = 'yourFileName'editor.customConfig.uploadImgServer = "{:url('admin/gift/wangeditorImg')}"  // 上传图片到服务器// 限制一次最多上传 5 张图片editor.customConfig.uploadImgMaxLength = 5// 将图片大小限制为 3Meditor.customConfig.uploadImgMaxSize = 3 * 1024 * 1024editor.customConfig.uploadImgHooks = {customInsert: function (insertImg, result, editor) {var url =result.data.url;//获取后台返回的urlinsertImg(url);}};editor.create()
</script>
<script>layui.use(['form', 'upload', 'laydate'], function () {var form = layui.form,layer = layui.layer,upload = layui.upload;laydate = layui.laydate;$ = layui.$;// 监听选择人员form.on('select(user)', function(data){layer.load(1);//加载中var uid=data.value;$.ajax({url: "{:url('admin/floor/get_user_info')}",type: 'POST',async: true,data: {uid:uid},success: function (datas) {if(datas.status == 0){layer.msg(datas.msg);return false;}// 显示照片$('input[name=thumbnail]').val(datas.data.img);$('img.layui-upload-img').attr('src',datas.data.img);// 显示介绍if(datas.data.abstract){editor.txt.html(datas.data.abstract);}else{editor.txt.html('');}form.render();layer.closeAll('loading');}});});//监听提交form.on('submit(saveBtn)', function (data) {// data = data.field;var uid = $("#uid").val();if(uid == ""){alert("请选择用户");return false;}var img = $("#thumbnail").val();var abstract = editor.txt.html();$.post("{:url('admin/floor/addinfook')}", {uid:uid,img:img,abstract:abstract}, function (res) {if (res.code == 1) {layer.alert(res.msg, {icon: 6, title: '添加提示'}, function () {var iframeIndex = parent.layer.getFrameIndex(window.name);parent.layer.close(iframeIndex);});} else {layer.alert(res.msg, {icon: 7, title: '添加提示'}, function () {var iframeIndex = parent.layer.getFrameIndex(window.name);parent.layer.close(iframeIndex);});}})return false;});//普通图片上传var uploadInst = upload.render({elem: '#test1', url: "{:url('admin/banner/upload')}" //改成您自己的上传接口, before: function (obj) {//预读本地文件示例,不支持ie8obj.preview(function (index, file, result) {$('#demo1').attr('height', '100px'); //图片链接(base64)$('#demo1').attr('width', '100px'); //图片链接(base64)$('#demo1').attr('src', result); //图片链接(base64)});}, done: function (res) {if (res.code == 1) {var src = res.data.img;$("input[name='thumbnail']").attr('value', src)return layer.msg(res.msg);}else{$('input[name=thumbnail]').val('');$('img.layui-upload-img').attr('src','');return layer.msg(res.msg);}}, error: function () {//演示失败状态,并实现重传var demoText = $('#demoText');demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-xs demo-reload">重试</a>');demoText.find('.demo-reload').on('click', function () {uploadInst.upload();});}});});
</script>

可以用 editor.txt.html() 获取 html内容 这里获取到的是 html代码 这一块是没有样式的 需引入样式 样式可参考官网
可以用 editor.txt.text() 获取 text内容 这里获取到的是文字内容

php代码(tp5)

    public function addinfook(){$uid = input('post.uid');$save = [];// $this->error('修改失败'.input('post.img'));if(input('post.img')){$save['img'] = input('post.img');if(strpos($save['img'], "https://xcxs.yxzyhz.com") === false){$save['img'] = "https://xcxs.yxzyhz.com".$save['img'];}}if(input('post.abstract')){$save['abstract'] = input('post.abstract');}if($save){$rest = DB::name("user")->where("id = {$uid}")->update($save);if ($rest !== false) {$this->success('修改成功', 'house');} else {$this->error('修改失败');}  }else{$this->error('未修改内容');}}public function get_user_info(){$uid = input('uid');$floor_user = DB::name("user")->where("id = '{$uid}'")->field("id,abstract,img")->find();if(!$floor_user){return json(['status'=>0,'msg'=>'未找到此人员信息','data'=>'',]);}return json(['status'=>1,'msg'=>'','data'=>$floor_user,]);}//  文件上传方法public function upload(){// 获取表单上传文件 例如上传了001.jpg$file = request()->file('file');$info = $file->validate(['size' => 9999999999, 'ext' => 'jpg,png,gif,pdf,jpeg'])->move('./uploads');if ($info) {// 成功上传后 获取上传信息$data['img'] = '/aixin/public/uploads/' . $info->getSaveName();$data['img'] = str_replace('\\', '/', $data['img']);$this->success('success', '', $data);} else {$this->error($file->getError());}}

图示
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/700650.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

求学生平均成绩(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//声明平均数函数average; float average(float score[10]);int main() {//初始化变量值&#xff1b;float score[10], aver;int i 0;//填充数组&#xff1b;pr…

数据库系统概论(超详解!!!)第八节 数据库设计

1.数据库设计概述 数据库设计是指对于一个给定的应用环境&#xff0c;构造&#xff08;设计&#xff09;优化的数据库逻辑模式和物理结构&#xff0c;并据此建立数据库及其应用系统&#xff0c;使之能够有效地存储和管理数据&#xff0c;满足各种用户的应用需求&#xff0c;包…

运维别卷系列 - 云原生监控平台 之 01.prometheus 入门和部署

文章目录 [toc]什么是 PrometheusPrometheus 架构及其一些生态系统组件Prometheus 的工作模式Prometheus 的适用场景Prometheus 的不适用场景Prometheus 词汇表 Prometheus 启动参数Prometheus 配置文件通用占位符定义配置文件示例解释服务发现 Prometheus 部署创建 namespace创…

System V IPC(进程间通信)机制详解

文章目录 一、引言二、System V IPC的基本概念1、IPC结构的引入2、IPC标识符&#xff08;IPC ID&#xff09;3、S ystem V的优缺点 三、共享内存&#xff08;Shared Memory&#xff09;1、共享内存的基本概念2、共享内存的创建&#xff08;shmget&#xff09;3、共享内存的附加…

51. UE5 RPG 自定义FGameplayEffectContext

我们期望能够通过FGameplayEffectContext将此次技能造成的伤害是否触发格挡和暴击的参数传递到AttributeSet中&#xff0c;所以需要实现自定义一个FGameplayEffectContext类&#xff0c;来增加对应的配置。 创建自定义类文件 首先在Public目录上右键&#xff0c;选择添加一个…

考研数学|李林《880》做不动,怎么办!?看这一篇!

在考研数学的备考过程中&#xff0c;遇到难题是很常见的情况&#xff0c;尤其是当你尝试解决李林880习题集中的问题时。他以其难度和深度著称&#xff0c;旨在帮助考生深入理解数学分析的复杂概念。 如果你在解题过程中感到困难&#xff0c;这并不是你个人的问题&#xff0c;而…

Git 的原理与使用(中)

Git 的原理与使用&#xff08;上&#xff09;中介绍了Git初识&#xff0c;Git的安装与初始化以及工作区、暂存区、版本库相关的概念与操作&#xff0c;本文接着上篇的内容&#xff0c;继续深入介绍Git在的分支管理与远程操作方面的应用。 目录 五、分支管理 1.理解分支 2.创…

基于spingboot,vue线上辅导班系统

目录 项目介绍 图片展示 运行环境 获取方式 项目介绍 权限划分&#xff1a;用户&#xff0c;管理员 具有前后台展示&#xff0c;前台供用户使用&#xff1b;用户具有自己的后台&#xff0c;查看自己的老师课程等&#xff1b;管理员具有最大的权限后台。 用户&#xff1a…

Jmeter接口测试和性能测试

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 目前最新版本发展到5.0版本&#xff0c;需要Java7以上版本环境&#xff0c;下载解压目录后&…

数据结构之二叉树详解[1]

在前面我们介绍了堆和二叉树的基本概念后&#xff0c;本篇文章将带领大家深入学习链式二叉树。 1.预备知识 2.二叉树结点的创建 3.二叉树的遍历 3.1前序遍历 3.2中序遍历 3.3 后序遍历 4.统计二叉树的结点个数 5.二叉树叶子结点的个数 6.二叉树第k层的结点个数 7.总结 …

自动驾驶占据感知的综述:信息融合视角

24年5月香港理工的论文“A Survey on Occupancy Perception for Autonomous Driving: The Information Fusion Perspective“。 3D 占据感知技术旨在观察和理解自动驾驶车辆的密集 3D 环境。该技术凭借其全面的感知能力&#xff0c;正在成为自动驾驶感知系统的发展趋势&#x…

最新极空间部署iCloudpd教程,实现自动同步iCloud照片到NAS硬盘

【iPhone福利】最新极空间部署iCloudpd教程&#xff0c;实现自动同步iCloud照片到NAS硬盘 哈喽小伙伴们好&#xff0c;我是Stark-C~ 我记得我前年的时候发过一篇群晖使用Docker部署iCloudpd容器来实现自动同步iCloud照片的教程&#xff0c;当时热度还很高&#xff0c;可见大家…