Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php和javascript中创建带有预览的图像上载程序_Javascript_Html - Fatal编程技术网

在php和javascript中创建带有预览的图像上载程序

在php和javascript中创建带有预览的图像上载程序,javascript,html,Javascript,Html,我的代码似乎无法从我的桌面提取图像进行预览。我不知道是什么。它所做的只是给我看一个破碎的图像。这是代码 javascript function ajaxFileUpload(upload_field) { // Checking file type var re_text = /\.jpg|\.gif|\.jpeg|\.png|\.gif/i; var filename = upload_field.value; if (filename.search(re_text) == -1) { ale

我的代码似乎无法从我的桌面提取图像进行预览。我不知道是什么。它所做的只是给我看一个破碎的图像。这是代码

javascript

function ajaxFileUpload(upload_field)
{
// Checking file type
var re_text = /\.jpg|\.gif|\.jpeg|\.png|\.gif/i;
var filename = upload_field.value;
if (filename.search(re_text) == -1) {
alert("File should be either jpg or gif or jpeg or png");
upload_field.form.reset();
return false;
}
document.getElementById('picture_preview').innerHTML = '<img src="" width="10%" border="0" />';
upload_field.form.action = 'upload-picture.php';
upload_field.form.target = 'upload_iframe';
upload_field.form.submit();
upload_field.form.action = '';
upload_field.form.target = '';
return true;
}
函数ajaxFileUpload(上传_字段)
{
//检查文件类型
var re|u text=/\.jpg\.gif\.jpeg\.png\.gif/i;
var filename=upload_field.value;
if(filename.search(re_text)=-1){
警报(“文件应为jpg或gif或jpeg或png”);
upload_field.form.reset();
返回false;
}
document.getElementById('picture_preview')。innerHTML='';
upload_field.form.action='upload picture.php';
upload_field.form.target='upload_iframe';
upload_field.form.submit();
上传_field.form.action='';
上传_field.form.target='';
返回true;
}
HTML


上传图片:

类似的方法应该可以:

Javascript

var input = document.getElementById('image_uploader');
var uploadedImage = document.getElementById('uploaded_image');

input.addEventListener('change', onImageInput);

function onImageInput()
{
    var imageFile = input.files[0];
    var reader = new FileReader();
    reader.addEventListener('loadend', onReaderComplete);
    reader.readAsDataURL(imageFile);
}

function onReaderComplete(e)
{
    uploadedImage.src = e.target.result;
}
HTML



)使用AJAX或其他类似的东西连接到服务器。

类似的方法应该可以:

Javascript

var input = document.getElementById('image_uploader');
var uploadedImage = document.getElementById('uploaded_image');

input.addEventListener('change', onImageInput);

function onImageInput()
{
    var imageFile = input.files[0];
    var reader = new FileReader();
    reader.addEventListener('loadend', onReaderComplete);
    reader.readAsDataURL(imageFile);
}

function onReaderComplete(e)
{
    uploadedImage.src = e.target.result;
}
HTML



)使用AJAX或其他类似工具发送到服务器。

浏览器显示一个损坏的图像,因为它无法找到您的图像。检查您的浏览器控制台,错误消息说什么?它给我一个“404(未找到)”错误浏览器显示一个损坏的图像,因为它无法找到您的图像。检查您的浏览器控制台,错误消息说什么?它给我一个“404(未找到)”错误关联的HTML是什么样子的?我已经修改了我的答案,也包含了所需的HTML。只要在JS部分有一个
input
和一个
img
元素可以使用,你几乎可以用任何方式来完成。关联的HTML是什么样子的?我已经修改了我的答案,也包含了所需的HTML。只要在JS部分中有一个
input
和一个
img
元素可以使用,您几乎可以用任何方式来完成。
<input type="file" id="image_uploader"/>
<div id="picture_preview"><img id="uploaded_image"/></div>