表单js onFormMounted(){ this.parent.$parent.handleIframMessage = (event) =>{ if (event.origin != window.location.origin) return;
this.$parent.$parent.$parent.formJson.attachment_key_ids.push(event.data)
this.$parent.$parent.$parent.clickSubmit()
} window.addEventListener('message', this.parent.$parent.handleIframMessage); const parant=document.querySelector('.attchment'); const elUpload = parant.querySelector('.el-upload');
if (elUpload) {
// 复制el-upload元素
const clonedElement = elUpload.cloneNode(true);
// 添加一些标识类
clonedElement.classList.add('cloned-upload');
const uploadBtn = clonedElement.querySelector('.uploadBtn');
const cloned_upload=document.querySelector('.cloned-upload');
if (cloned_upload) return
if (uploadBtn) {
const pElement = uploadBtn.querySelector('p');
if (pElement) {
pElement.textContent = '高拍仪';
}
}
var URL="/Video/index.html";
clonedElement.addEventListener('click', function() {
window.open(URL,null,"height=1000,width=1250,status=0,toolbar=no,menubar=no,location=no,scrollbars=yes,top=50,left=350,resizable=yes");
});
// 添加鼠标样式提示
clonedElement.style.cursor = 'pointer';
clonedElement.style.marginLeft = '10px';
clonedElement.title = '点击打开新窗口';
console.error(clonedElement)
// 在原元素后插入复制的元素
elUpload.insertAdjacentElement('afterend', clonedElement);
} }
高拍仪js base64格式上传到服务器 var pdfBase64 ='data:application/pdf;base64,'+data.base64;
var ('#avatar'); var pdfBlob = base64ToBlob(pdfBase64, 'application/pdf'); var fileName = generateFileName(); var pdfFile = new File([pdfBlob], fileName+".pdf", { type: 'application/pdf', }); var formData = new FormData(); formData.append('file', pdfFile); formData.append('run_id', run_id); formData.append('prcs_id', prcs_id);
jQuery.ajax({
url: '/api/admin/Attachment/upload',
type: 'POST',
dataType:'json',
data: formData,
processData: false, // jQuery不要去处理发送的数据
contentType: false, // jQuery不要去设置Content-Type请求头
success: function(response) {
if (window.opener) {
// console.log(response)
//把结果返回到父窗口
window.opener.postMessage(response.data.id, window.location.origin);
}
// 关闭当前窗口
window.close();
},
});