Php jQuery查看上传的文件

Php jQuery查看上传的文件,php,jquery,html,file-upload,Php,Jquery,Html,File Upload,我试图上传一个文件,并在iFrame上查看该文件,但它不起作用 这是我试过的 jQuery('.file_upload1').change(function(){ jQuery('iframe').attr('src', jQuery(this).val()); $('iframe').attr('src', $('iframe').attr('src')); }); <label><input class="file_upload1" name="file_cover" ty

我试图上传一个文件,并在iFrame上查看该文件,但它不起作用

这是我试过的

jQuery('.file_upload1').change(function(){ jQuery('iframe').attr('src', jQuery(this).val()); $('iframe').attr('src', $('iframe').attr('src')); });
<label><input class="file_upload1" name="file_cover" type="file"></label>
<div>
    <iframe src=""></iframe>
</div>
jQuery('.file_upload1').change(function(){jQuery('iframe').attr('src',jQuery(this.val());$('iframe').attr('src'),$('iframe').attr('src');});

如果这不起作用,我是否可以将上载的文件移动到服务器目录,以便路径变得有效?我将如何做到这一点?

除了此类解决方案的其他问题和局限性,并具体回答“为什么它不起作用?”问题:

  • change
    事件需要嵌套在函数中:

    jQuery("document").ready(function() {
        jQuery('.file_upload1').change(function() {
            jQuery('iframe').attr('src', jQuery(this).val());
        });
    });
    
  • iframe
    src
    属性必须为空。当选择带有
    输入类型文件的文件时,在Windows中,该值类似于
    c:\fakepath\file name。此处为
    ,因此在使用as
    iframe
    源代码之前,您必须对其进行一点修改

  • 关于

    我正在尝试上载文件并将其显示在iframe上,以强制其重新加载

    您不需要强制重新加载来实现这一点。“上传”意味着页面将被重新加载(好吧,除非上传是使用AJAX处理的,但我想这里不是这样)。为了上传文件,必须提交表单,并且需要重新加载页面。重新加载后,您可以轻松构建文件的完整路径,并在
    iframe
    中使用它,例如:

    <iframe src="<?php echo $file_full_url; ?>"></iframe>
    

    我在ready中使用了change函数,c:\fakepath\mre.pdf是我的文件名