javascript - HTML 文件上传 - 为什么要使用 IFrame

标签 javascript php html iframe

我一直在尝试让文件上传在 IE8 中正常工作。我看到的唯一解决方案是发布到 IFrame。为什么这样做?是否不可能有一个简单的表格,例如

<form action="test.php" method="post" enctype="multipart/form-data">
    Select image to upload:
    <input type="file" name="fileToUpload" id="fileToUpload">
    <input type="submit" value="Upload Image" name="submit">
</form>

直接提交给PHP

if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
        echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}

为什么需要 IFrame?

谢谢

最佳答案

上传文件不需要 iframe。

您需要一个 iframe 来在不离开当前页面的情况下上传文件(即对于 Ajax)。现代浏览器支持 FormData,它允许您使用 XMLHttpRequest 上传文件。

关于javascript - HTML 文件上传 - 为什么要使用 IFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33732655/

相关文章:

html - 浏览器窗口缩小时页脚与内容重叠

javascript - 如何检测范围输入上按下的 Shift 键?

javascript - UIWebview 如何在 iOS 中进行渲染?

javascript - 使用 Javascript/JQuery 将页面上的数据存储到变量

PHP 正则表达式替换

php - 我无法使用 codeigniter 进行简单的数据库更新

javascript - 更改有序列表中的编号?

php - Yii2 无法写入 Assets 文件夹

html - 如何根据屏幕尺寸重新排序 <OL> (bootstrap 4)

html - Owl Carousel slider 不适用于 rtl