利用jQuery实现模块编辑器拖拽排序代码



64 254 85



特效描述:利用jQuery实现 模块 编辑器 拖拽排序 代码,利用jQuery实现模块编辑器拖拽排序代码

代码结构

1. 引入CSS

<link href="https://cdn.bootcss.com/bootstrap/4.1.1/css/bootstrap.css" rel="stylesheet">
<link href="https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">

2. 引入JS

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery-sortable-min.js"></script>

3. HTML代码

<div class="wrap">
	<h3 style=" text-align:center;">简易自定义表单及拖拽排序</h3>
	<div  class="addbtns">
		<button type="button" class="add btn btn-warning" data-target="_oneline"><span class="fa fa-plus"></span> 单行输入框</button><br/>
		<button type="button" class="add btn btn-warning" data-target="_multiline" ><span class="fa fa-plus"></span> 多行输入域</button><br/>
		<button type="button" class="add btn btn-warning" data-target="_file" ><span class="fa fa-plus"></span> 附 件</button>
	</div>
	<!-- 控件源代码 -->
	<ul class="originlist" style="display:none;">
		<li class="_oneline">
			<span class="delete fa fa-trash-o"> 删除</span>
			<div class="customeritem">
				<span class="key" data-title="标题">标题</span> 
				<span class="fa fa-edit"></span>
				<div class="value input" data-type="text" data-placeholder="请填写标题">请填写标题</div>
			</div>
		</li>
		<li class="_multiline">
			<span class="delete fa fa-trash-o">删除</span> 
			<div class="customeritem">
				<span class="key" data-title="说明">说明</span> 
				<span class="fa fa-edit"></span>
				<div class="value textarea" data-type="textarea" data-placeholder="请填写说明">请填写说明</div>
			</div>
		</li>
		<li class="_file">
			<span class="delete fa fa-trash-o">删除</span>
			<div class="customeritem">
				<span class="key" data-title="附件">附件</span> 
				<span class="fa fa-edit"></span>
				<div class="value file" data-type="file" data-placeholder="请选择附件"><span class="fa fa-plus"></span></div>
			</div>
		</li>
	</ul>
	<ul class="customerlist">
		<p class="tips">请点击右侧按钮,添加自定义控件</p>
	</ul>
	<button type="button" class="showjson  btn btn-block btn-success" ><span class="fa fa-save"></span> 保 存</button>
	<div class="console" >
	</div>
</div>
<script>
	$(function () {
		$('.add').on('click', function () {
			var that = $(this);
			var target = that.data('target');
			$('.customerlist').append('<li> ' + $('.originlist>.' + target).html() + '</li>');
			$("ul.customerlist").sortable();
			//off 先取消绑定,否则会调用多次
			$('.customeritem').off('click').on('click', modifytitle);
			$('.delete').off('click').on('click',deleteitem);
			$('.tips').hide();
		})
		$('.showjson').on('click',function(){
			if($('.customerlist .customeritem').length==0) return;
			var temp=[];
			var t;
			$('.customerlist .customeritem').each(function(index,element){
				t = $(this).children();
				temp.push({"type":$(t[2]).data('type'),"title":$(t[0]).data('title')});
			})
			console.log(temp);
			$('.console').html(JSON.stringify(temp))
		})
	})
	function modifytitle(e) {
		var that = $(this);
		var key = that.find('.key').eq(0);
		var value = that.find('.value').eq(0);
		var newtitle = prompt("请填写标题", key.html());
		if ($.trim(newtitle).length > 8) {
			alert('标题长度不能超过8位');
		}else if ($.trim(newtitle).length > 0) {
			key.data('title',newtitle).html(newtitle) ;
			if(value.data('type')!='file') value.data('placeholder',newtitle).html( '请填写' + newtitle);
		}else{}
	}
	function deleteitem() {
		if(confirm('确定要删除吗?')){
			var that = $(this);
			var parent = that.parent();
			parent.remove();
			if($('.customerlist .customeritem').length==0) $('.tips').show();
		}
	}
</script>
<div style="text-align:center;margin:50px 0; font:normal 14px/24px 'MicroSoft YaHei';">
</div>



用户评论
大牛,别默默的看了,快登录帮我点评一下吧!:)      登录 | 注册


热门标签: 瀑布流 收藏 预览 自适应页面大小 响应式区块列表布局 摇摆 烟花 清单样式 照相机 注释 下划线 结构图 鼠标悬停 条形码 弹幕 画板 朋友圈样式 红包 css绘制样式 支付 图文布局 图片拖动 右键菜单 图片头像上传 二维码 文字拖动 文字提示框 文件上传 地图 拖动排序 提示框/弹出层 文本框 计算器 layer 下拉框 计时器 弹出层拖动 lightbox 复选 桌面 单选 跳转 Tooltip工具提示框 登录框 步骤 浮动提示框 注册框 键盘 html5弹窗动画 搜索框 签到 验证码 分享 二级联动 点赞 投票 三级联动 雪花 城市选择 打印 value赋值 筛选 答题 按钮控制 购物车 震动 颜色选择 表单提交 全选/反选 图表 添加删除 鼠标滑过 添加标签 抽奖 密码强度验证 表情 表单验证 qq空间 头像截图 html5按钮动画 星星打分评分 按钮样式 密码修改设置 编辑器 播放器 电子杂志 排行榜 分页翻页 排序 表格隔行变色 table表格 进度条 多功能 拖动拽动 弹出层拖动 窗口提示框 滑动星星打分 切换按钮 form表单 其他更多

×
×

注册

官方QQ群

扫描上面二维码加微信群

官方QQ群

jQuery/js讨论群
群号:642649996
Css3+Html5讨论群
群号:322131262

加群请备注:从官网了解到