网上许多ajax jquery 上传图片都要用到submit button, 请问如何上传并直接在本页看到当用户点击p? 生死攸关问题,多谢先。
<html>
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>
<body>
<input multiple class="fileInput" type="file" id="files" name="files[]"/>
<br>
<p id="submit" > click me to pass the photo to upload.php</p>
<p name="photoreturn"></p>
</body>
</html>
<style>
#submit{
background-color: #ffcc99;
display:inline-block;
padding:5px;
border-radius: 3px;
cursor:pointer;
}
</style>
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
不太明白题主意思,个人理解是不是想表单提交而不通过submit触发?采用H5的FormData试下
1、可以在上次成功后,再发一个ajax请求去请求图片内容然后显示
2、获取要上传图片的本地路径,然后缓存起来,点击上传成功就显示(通过input的files是可以获取到图片的路径的)
如果你只是想预览图片,可以试下HTML5的 FileReader。
如果你是想不刷新当前页面,上传一个图片到服务器,然后在页面上显示,那可以采用iframe上传。具体原理就是建一个隐藏的iframe,将图片传递给iframe中的form上传。然后在上传完毕的回调函数中添加图片到页面。
来个简单的方案,看看适不适合你的胃口;
PHP+iFrame无刷新上传
两种方法
1.file控件,利用FileReader预览上传至浏览器的图片,但并没有提交至服务器。
2.file控件(设置透明并绝对定位在你想要的p层上)上传,ajax上传form的表单数据,并回调图片显示在你想显示的地方。
贴上第二种方法部分代码:
function inputchanges(self){
}