• thinkphp 关于iframe一次提交完成所有操作


      一、上传操作html界面,upload.html  

        <import type='css' file="admin.css.common" />
        <import type='css' file="admin.css.main" />
        <form action="{:U('Public/upload_post')}" style="height:40px;" enctype="multipart/form-data" method="post" >
        <input type="file" name="photo" class="input-text lh30" size="10" />
        </form>

      二、页面引用upload页面

         <input type="hidden" name="picurl" id="picurl" value="" />

        <iframe width="100%" id="uploadframe" name="uploadframe" frameborder="0" height="40" src="{:U('Public/upload')}"></iframe>

      三、点击提交   

        <input type="submit" onclick="return jc();" name="button" class="btn btn82 btn_save2" value="保存">
        <input type="resit" name="button" class="btn btn82 btn_res" value="重置">

      四、js提交操作,实现upload页面上传提交操作  

        function jc(){
              if($(window.frames["uploadframe"].document).contents().find("input").val()){
              $(window.frames["uploadframe"].document).contents().find("form").submit();
                return false;
                  }
               }

      五、上传控制器处理。当上传成功后,js使父框架原表单提交。

          public function upload_post(){
            $upload = new ThinkUpload();// 实例化上传类
            $upload->maxSize = 3145728 ;// 设置附件上传大小
            $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
            $upload->rootPath = './Uploads/'; // 设置附件上传根目录
            $upload->savePath = ''; // 设置附件上传(子)目录
                // 上传文件
            $info = $upload->upload();
            if(!$info) {// 上传错误提示错误信息
            $this->error($upload->getError());
              }else{// 上传成功
            echo '<script>parent.document.getElementById("picurl").value="'. $info["photo"]['savepath'].$info["photo"]['savename'].'";
              parent.document.getElementById("myFrom").submit(); </script>';
            // $this->success('上传成功!');
                }
            }

      

  • 相关阅读:
    spider
    python 2.X
    django 创建项目
    NameError: name 'pip' is not defined
    异常捕获
    @property
    node-Telnet
    ES6-模块化
    高级排序算法之双路快速排序
    高级排序算法之快速排序
  • 原文地址:https://www.cnblogs.com/xiamibk/p/3844749.html
Copyright © 2020-2023  润新知