none
求改正为Firefox兼容的弹出窗口(IE下能正常弹出) RRS feed

  • 问题

  •  

    是一个上传进度条的弹出窗口,在IE下能正常显示并显示进度.

     

    代码如下:

     

     

    Code Snippet

    <script language="javascript" type="text/javascript">
      function showProgress()
      {
              var ary = document.getElementsByTagName('INPUT');
        var openBar = false;
        for(var i=0;i<ary.length;i++)
        {
         var obj = ary[i];
         if(obj.type  == 'file')
         {
          if(obj.value != '')
          {
           openBar = true;
           break;
          }
         }
        }
        if(openBar)
        {
         window.showModelessDialog('ProgressBar.aspx?UploadID='+document.all.UploadID.value,window,'status:no;dialogWidth:500px;dialogHeight:250px;center:yes;help:no;');
        }
      }
      
      </script>

     

     

    这段代码加入在head区内

     

    然后在页面的按钮上加了以下代码段(后台cs文件中)

    Code Snippet

    protected void Page_Load(object sender, EventArgs e)
            {

    Button1.Attributes.Add("Onclick", "return showProgress()");

    }

     

     

     

     

    现在的问题就是IE下能正常弹这个进度条出来并显示,在Firefox下就不行,应该怎么改呢,求解.
    2008年12月30日 10:02

答案

  •  

    Firefox 没有 showModelessDialog,你可以改用一般的window.open
    2008年12月30日 12:24
    版主
  • 解决了,改成:

    window.open('ProgressBar.aspx?UploadID='+document.getElementById('UploadID').value,'newwindow','status=no,Width=500,Height=250,center=yes,help=no,alwaysRaised=yes;');
    2008年12月31日 3:11

全部回复

  •  

    Firefox 没有 showModelessDialog,你可以改用一般的window.open
    2008年12月30日 12:24
    版主
  • 改成windows.open了,但Firefox的Firebug提示:"document.all is undefined"

    这个怎么解决??

    好像是这句话:
    document.all.UploadID.value

    应该换成什么才行呢

    现在是这样的:

     
    Code Snippet

    window.open('ProgressBar.aspx?UploadID='+document.all.UploadID.value,'newwindow','status=no,Width=500,Height=250,center=yes,help=no,alwaysRaised=yes;');


    2008年12月31日 2:00
  • 跟踪得到document.all.UploadID.value的值为"e9b0453c-9567-496b-b110-d2ae4398596c"

    换成Firefix兼容写法应该是?

    求解?

    2008年12月31日 2:25
  • 解决了,改成:

    window.open('ProgressBar.aspx?UploadID='+document.getElementById('UploadID').value,'newwindow','status=no,Width=500,Height=250,center=yes,help=no,alwaysRaised=yes;');
    2008年12月31日 3:11