jquery+bootstrap实现一个拖拽式表单生成预览效果代码
代码语言:html
所属分类:表单美化
代码描述:jquery+bootstrap实现一个拖拽式表单生成预览效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link type="text/css" rel="stylesheet" href="//repo.bfw.wiki/bfwrepo/css/bootstrap.4.3.1.min.css">
<style>
.controlName{
width: 80%;
float: left;
padding: 5px;
border: 1px solid #ededed;
margin-bottom: 20px;
border-radius: 2px;
color: #777;
}
.interval{
width:96%;
margin: 0 2%;
padding: 0 2%;
background: #ffffff;
float: left;
/* overflow-y: auto;
overflow-x: hidden; */
}
.controlImgName{
width: 20px;
float: left;
height: 20px;
overflow: hidden;
position: relative;
}
.controlImgName img{
width: 100%;
position: absolute;
top: 0;
left: 0;
}
.controlRealName{
float: left;
font-size: 14px;
}
.controlName:hover{
color:#0377ed;
cursor: pointer;
border: 1px solid #0377ed;
}
.mainbackground{
}
.questionnaireTitle{
text-align: center;
font-size: 18px;
}
.questionnaireSubject{
width:100%;
padding: 0px 10px;
float: left;
position: relative;
height: 100%;
overflow: auto;
}
.questionnaireItemHead{
width: 90%;
float: left;
line-height: 40px;
height: 44px;
margin-left: 5%;
}
.questionnaireItemName{
float: left;
width: 60%;
}
.questionnaireItemGroupButton{
float: right;
}
.questionnaireItemGroupButton button{
margin-left: 5px;
}
.questionnaireItemContent{
width: 90%;
float: left;
margin-left: 5%;
margin-bottom: 20px;
}
.checkMargin{
margin-top: 7px;
}
.selectInputDiv{
display:none;
border: 1px solid #ccc;
width: 92%;
padding: 4px 6px;
box-shadow: 1px 1px 0px 0px #ccc;
position: absolute;
z-index: 10000;
background: #fff;
overflow:auto;
}
.selectInputDiv p{
margin-bottom: 0px;
padding: 0.5rem 0;
}
.selectInputDiv p:hover{
background: #0377ed;
color:#fff;
}
.full{
width: 100%;
float: left;
}
.z_photo {
padding: 5px;
border: 1px dashed #E7E6E6;
}
.z_file {
width: 120px;
height: 120px;
margin: 0 auto;
position: relative;
}
.add-img{
display: block;
width: 120px;
height: 120px;
}
.imgFile{
width: 100%;
height: 100%;
opacity: 0;
position: absolute;
top: 0px;
left: 0px;
z-index: 100;
}
.imgExplain{
font-size:12px;
color:#888;
float:left;
}
.errerClass {
display: none;
float: left;
font-size: 14px;
color: #ff0000;
}
.message{
float: left;
width: 100%;
overflow: hidden;
position: relative;
}
.message .input {
width: 70%;
float: left;
}
.message .liulan {
width: 30%;
height: 38px;
padding: 4px 6px;
background: url(//repo.bfw.wiki/bfwrepo/icon/5d835147aa4b2.png)left center no-repeat;
background-size: cover;
text-indent: 10px;
cursor: pointer;
border: 1px solid #ccc;
border-radius: 3px;
}
.message .files {
position: absolute;
left: 0px;
top: 0px;
cursor: pointer;
filter: Alpha(opacity=0);
opacity: 0;
display: none;
}
.fileTips {
float: left;
}
.fileTips p {
color: #888!important;
font-size: 12px!important;
margin: 0px!important;
}
.questionnaireAttribute{
display: none;
width: 96%;
margin: 0 2%;
padding: 0 2%;
float: left;
position: relative;
}
.textRegularCustom{
display: none;
}
.placeLocationTop{
border-top:1px solid #22aaff;
}
.placeLocationBottom{
border-bottom:1px solid #22aaff;
}
.questionnaireItem{
width:100%;
}
.required{
float:left;
color:#f00;
}
.requiredHiddle{
display: none;
}
.previewMain{
position: absolute;
width: 800px;
height: 600px;
display: none;
margin: 0 auto;
border: 1px solid #000;
background: #fff;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
.errorMain{
line-height: 40px;
height: 40px;
overflow: hidden;
color: #f00;
width: 100%;
}
.hidMargin{
margin-bottom:0px!important;
}
.z_fileImgDel{
position: absolute;
width: 100%;
text-align: center;
background: #000;
opacity: 0.7;
color: #fff;
bottom: 0px;
z-index: 101;
}
.messagedel{
position: absolute;
z-index: 101;
width: 120px;
height: 100%;
text-align: center;
line-height: 38px;
background: #000;
opacity: 0.5;
color: #fff;
display: none;
right: 30%;
}
.priviewbtn,.getcode{
background: 000;
cursor: pointer;
margin: 20px;
text-align: center;
border: 1px solid grey;
}
</style>
</head>
<body style="height: 100%;position: fixed;width: 100%;">
<div id="app"></div>
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/popper-min.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/bootstrap.4.3.1.min.js"></script>
<script>
//-----------------------------------------初始化方法及页面加载方法-------------------------------------------
function Initialization(name) {
//先清除对应div中的html代码
$(name).empty();
var main = '<div class="container-fluid" style="background:#edededa1;"><div class="row">';
main += leftToolbar();
main += centerMain();
main += rightAttribute();
main += '</div></div><div class="dragControl"></div>';
main += '<div class="previewMain"></div>';
//添加基本的界面布局
$(name).append(main);
$(".interval").css("height",document.body.offsetHeight+"px");//初始化高度,跟浏览器可视高度一致
}
//左侧工具栏
function leftToolbar() {
//<!--左侧工具栏-->
var str = '<div class="col-lg-3 mainbackground">';
str += '<div class="interval">';
str += '<p class="questionnaireTitle">工具栏</p><div class="priviewbtn">预览</div><div class="getcode">获取代码</div>';
str += '<div class="row">';
//文本框
str += '<div class="col-lg-6">';
str += '<div class="controlName" data-type="text">';
//str += '<div class="controlImgName"><img src="../images/icon_ps.png" alt="图片"></div>';
str += '<div class="controlRealName">文本框</div>';
str += '</div></div>';
//多行文本框
str += '<div class="col-lg-6">';
str += '<div class="controlName" data-type="multiple">';
//str += '<div class="controlImgName"><img src="../images/icon_ps.png" alt="图片"></div>';
str += '<div class="controlRealName">多行文本框</div>';
str += '</div></div>';
//时间框
str += '<div class="col-lg-6">';
str += '<div class="controlName" data-type="date">';
//str += '<div class="controlImgName"><img src="../images/icon_ps.png" alt="图片"></div>';
str += '<div class="controlRealName">时间框</div>';
str += '</div></div>';
//单选框
str += '<div class="col-lg-6">';
str += '<div class="controlName" data-type="radio">';
//str += '<div class="controlImgName"><img src="../images/icon_ps.png" alt="图片"></div>';
str += '<div class="controlRealName">单选框</div>';
str += '</div></div>';
//复选框
str += '<div class="col-lg-6">';
str += '<div class="controlName" data-type="checkbox">';
//str += '<div class="controlImgName"><img src="../images/icon_ps.png" alt="图片"></div>';
str += '<div class="controlRealName">复选框</div>';
str += '</div></div>';
//下拉框
str += '<div class="col-lg-6">';
str += '<div class="controlName" data-type="dropdown">';
//str += '<div class="controlImgName"><.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0