【发布时间】:2011-06-28 10:20:32
【问题描述】:
我在网页上实现了AsyncFileUpload 控件。此网页要求上传的文件出现在GridView。GridView 包含以下列:“文件名”、“机密”复选框和“删除”按钮以删除上传的文件。
由于AsyncFileUpload 回发不执行整页回发,我需要在 AsyncFileUpload 控件的OnClientUploadComplete 事件上“强制”回发,以便在上传后呈现网格视图一个文件。
在OnClientUploadCompleteEvent中,我使用javascript调用__doPostBack。在这个回发中,我只绑定了我的 GridView 并显示了文件信息(我没有重新保存文件)。
问题:在AsyncFileUpload的第一次“部分”回传中,文件按预期成功上传。在我使用__doPostBack 强制进行的第二次回发时,文件被重新上传。
您可以使用显示上传进度的 Google Chrome 来验证这一点。行为如下:
- 选择文件后,进度从 0% 增加到 100% 并上传文件。
- 此后,__doPostBack 执行,您可以看到上传进度再次从 0% 增加到 100%。
如何确保正确填充了 Gridview,但文件没有上传两次?
我附上了一个包含问题的示例解决方案:https://www.yousendit.com/download/MzZFc2ZBNDRrYUN4dnc9PQ
【问题讨论】:
-
请帮助我@user619814:stackoverflow.com/questions/18682909/…
标签: c# asp.net ajax gridview asyncfileupload