我想做一个点击按钮上传文件。最后路径传递到按钮所在页面。模式:页面A点击按钮用window.showModalDialog打开B页面,比页面通过表单提交到C页面处理,C页面处理完之后关闭C页面和B页面,路径值传递给A页面的文本框中
代码(只有JS和部分html代码)如下:
A页面:
    <input type='text' id='web_logo'><input type='button' onclick="showDialog('A.html','web_logo','500px','300px')">
 <script>
             function showDialog(url,id,width,height){
    var html=window.showModalDialog(url,'',"dialogWidth="+width+";dialogHeight="+height+";center:yes;status:no;help:no;scroll:no");
 }
        </script>
B页面:
    <form method="post" action="B.html" target="_blank">
       <input type="text" id="reslut" name="reslut" value="/upload/img/logo.jpg">
       <input type="submit" name="submit" value="提交">
    </form>C页面:<script>
var parent = window.opener.opener;
        var hiddenInput = parent.document.getElementById('web_logo');
hiddenInput.value="/upload/img/index.jpg";
opener.window.close();
window.close();
</script>在火狐下测试可以传值,并关闭B和C页面。但是在IE6,360下不行,不知道怎么回事,高手来帮下忙

解决方案 »

  1.   


    吓到我了.
    你这脚本应该在火狐下不行.
    反而在IE和360没问题吧?
    window.showModalDialog这东西是IE内核才支持的
      

  2.   

    饿 , 最好有 jquery 的 fancybox 插件,很简单的 
      

  3.   

    但是,在IE下应该是可以的,下面是IE下的错误信息网页错误详细信息消息: 'parent.document' 为空或不是对象
    行: 11
    字符: 5
    代码: 0
    URI: http://localhost/*******/C.html