jquery +ajax 上传加预览
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script src="/static/jquery-1.12.4.js"></script>
<h3>4.文件上传</h3>
<input type="file" id="img" />
<div id="container"></div>
<a class="btn" onclick="AjaxSubmit6()">上传</a>
<script>
function AjaxSubmit6() {
//document.getElementById('img')[0]
var data = new FormData();
console.log(data)
data.append('k1','v1');
data.append('k2','v2');
data.append('k3',document.getElementById('img').files[0]);
console.log(data)
$.ajax({
url: '/fakeajax',
type: 'POST',
data:data,
success:function (arg) {
var ele=document.createElement('img')
ele.src='/'+arg.url
document.getElementById('container').appendChild(ele)
},
processData: false, // tell jQuery not to process the data
contentType: false // tell jQuery not to set contentType
})
}
</script>
</body>
</html>
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .btn{ display: inline-block; padding: 5px 10px; background-color: coral; color: white; } </style> </head> <body> <iframe style="display: none" id="iframe1" name="ifra1"></iframe> <form id="fm1" action="/fakeajax" method="POST" enctype="multipart/form-data" target="ifra1"> <input type="file" name="k3" onchange="uploadFile();" /> </form> <h3>预览</h3> <div id="preview"> </div> <script src="/static/jquery-1.12.4.js"></script> <script> function uploadFile() { document.getElementById('iframe1').onload = reloadIframe1; document.getElementById('fm1').submit(); } function reloadIframe1() { var content = this.contentWindow.document.body.innerHTML; var obj = JSON.parse(content); var tag = document.createElement('img'); tag.src = obj.url; $('#preview').empty().append(tag); } </script> </body> </html>
Java学习内容