本帖最后由 neell 于 2012-10-04 15:15:38 编辑

解决方案 »

  1.   

    AsyncFileUpload,看名字是异步操作,这样不管是否执行完毕,都会继续执行后面代码,返回到b.aspx,你看看是不是有提供同步上传的,或者AsyncFileUpload有其他参数可以设置是否等待
      

  2.   

    在A.ASPX中clearbox这个插件中 以iframe的形式把B.aspx弹出来.
    不要用模态窗口。
      

  3.   

    这样一来的话,所有的操作都会在这个iframe中进行,不会影响它的父页面(A.aspx)。
      

  4.   

    非常感谢您的建议,我看了一下,之前我说错了,我的CLEARBOX是以IFRAME方式弹出的。我查了一下,clearbox对url的引用,本身就是iframe的方式,而非modal,是我的错,我会改原帖的,谢谢。
    这个问题,我估计是JQUERY或是AsyncFileUpload选择文件后,改变了某部分文件头造成。
    如果AsyncFileUpload选择文件体积过大超出限制,则触发后台按钮后,会得到网页出错(非程序错误,而是压根打不开)
      

  5.   

    那样的话,要看你B.aspx中的前台(或后台)代码才看得出问题了。说不准你在B.aspx里面某一个地方对父页面用了top.href的表达式(或其它方式),把A.aspx的url链接给改变了。
      

  6.   


    唉,我能那么傻吗?那么傻的话,能描述的清楚这个问题吗?当然,CLEARBOX与JQUERY的代码我没改过。
      

  7.   

    点了C按钮后,DIALOG关闭但iframe还存在.说明只是把iframe 隐藏了而已。
    但当你AsyncFileUpload选中了一个文件后,点击C,变化比较大。那你只要检查并调试AsyncFileUpload选择文件后做了什么js操作后改变了URL就可以了。
    最好单步跟踪到那个JS弹窗插件里面去,看得更透更远一点。
      

  8.   

    真的非常感谢楼上这位,多次帮助,虽然没帮到我,但是还是真心感谢。该问题现已自己解决,解决方法如下:当AsyncFileUpload控件选择文件后,自动开始上传,无论上传失败还是成功,则其会将iframe中的form标记(不是A的FORM,而是B的FORM)更改为类似这样:<form id="form1" enctype="multipart/form-data" onsubmit="javascript:return WebForm_OnSubmit();" action="B.ASPX" method="post">      ===========><form id="form1" enctype="multipart/form-data" onsubmit="javascript:return WebForm_OnSubmit();" action="B.ASPX" method="post" target="_top">因此,只要在AsyncFileUpload中,对OnClientComplete及OnClientError事件写入JS,强制改变上述form的target为空,则问题解决。在此,谢谢各位的帮助,无比感谢。如果这个问题不能解决,我只能废除那个jquery的dialog,呵呵。