我使用layui的upload.render上传文件,js代码我动态生成了,点击文件上传按钮后,传入图片文件什么的,后台没反应,前台也没有展示
点击下拉框时,我调用addConstructionUser(res,strsel);,动态拼接了上传的js
layui.use('form', function () {
var form = layui.form;
form.render();
form.on('select(itemType)', function (data) {
var res = data.value;
var e= data.elem;
console.log(res);
var strsel =e[e.selectedIndex].text;
console.log(strsel);
addConstructionUser(res,strsel);
})
});
这是 addConstructionUser(res,strsel);的代码
function addConstructionUser(res,strsel) {
console.log(res);
console.log(strsel)
var content = "" +
" | " +
"<input id='messageName"</span>+clickNum+<span class="hljs-string">"' style='height: 40px;line-height: 40px;text-align: center' class='layui-input' autocomplete='off' name='messageName' value="</span> +strsel+ <span class="hljs-string">"> | " +
""+
""+
"<label class='layui-form-label' style='color:white'>附件:</label>"+
""+
"<form class='layui-form' action='/enterprise.do/saveFiles' method='post' encType='multipart/form-data'>"+
""+
"</form>"+
""+
""+
""+
"删除"+
" | "+
" "+
""+
" "+
" "+
" "+
" | "+
"<label style='color: white' onclick='delUser(this)'>删除 | " +
" | " +
"
>"
$("#batchTd").append(content);
batchSetUserType();
layui.form.render();
clickNum++;
}
点击添加附件时,我onclick 了一个 batchSetUserType();,进行向后台传递文件,
function handleupload() {
var el = '#' + event.target.parentElement.id;
var result= el.charAt(el.length-1);
var intelligenceId = document.getElementById("itemType").value;
var $ = layui.jquery
, upload = layui.upload;
//多文件列表示例
var demoListView = $('#demoList'+result)
, uploadListIns = upload.render({
elem: event.target
, url: '/enterprise.do/saveFiles'
, accept: 'file'
, data: {
intelligenceId: intelligenceId
} //可放扩展数据 key-value
, multiple: true
, auto: true
, choose: function (obj) {
var files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列
//读取本地文件
obj.preview(function (index, file, result) {
var span = $([''">'
+ file.name + ' | |
'].join(''));
//单个重传
span.find('.demo-reload').on('click', function () {
obj.upload(index, file);
});
//删除
span.find('.demo-delete').on('click', function () {
delete files[index]; //删除对应的文件
span.remove();
uploadListIns.config.elem.next()[0].value = ''; //清空 input file 值,以免删除后出现同名文件不可选
});
demoListView.append(span);
});
}
, done: function (res, index, upload) {
if (res.code == 0) { //上传成功
$("#attachIds").val($("#attachIds").val() + res.attachId + ",");
$("#upload-" + index).children().eq(0).append(" 删除 ");
}
return delete this.files[index]; //删除文件队列已经上传成功的文件
} //code为后台传回来的数据,具体多少自己定,
//后台只能传回json格式数据,不然会走error函数;
, error: function (index, upload) {
alert("出现错误")
}
})
event.stopPropagation();
}
在选择文件后,前台和后台就没有反应了,文件没有传到后台,前台也没有展示
![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/687139473466175.png?x-oss-process=image/auto-orient,1/resize,w_320,m_lfit)
求解
前端页面,上传的文件,传到后端,并且显示到页面上