在对DropDownList进行选择操作(属性AutoPostBack:True),或对Dataview进行选择操作后,发现前面FileUpload里的选择好的文件名就被清空了,这样在实际应用中很不好,因为如果不小心被就会出现未选择任何上传文件的情况发生,有什么办法让这种情况不出现呢?

解决方案 »

  1.   

    将选中的内容放入viewstate中,下次他postback的时候再将内容重新赋给fileupload
      

  2.   

    这个我估计没办法. 貌似File框是无法赋值的......
      

  3.   


    如果技术上不怕麻烦的话, 这个办法好. 但你得考虑重新弄DataView控件的相关办法了. 呵呵
      

  4.   

    fileupload里的值是不能进行赋值的吧。
      

  5.   

    这个是因为你选择DropDownList后,要将请求回传到服务器,导致客户端刷新,所以每次回传到服务器都会被清空。FileUpload控件和其它的控件不太一样,其它的控件有视图状态,刷新任然能保持原来的值,因为FileUpload不能被赋值,所以没有办法保持原来的值。楼主要想值不被清空只有把"DropDownList"等控件放到UpdataPanel里,这样局部刷新不会影响FileUpload。没有其它的办法!
      

  6.   

    把ddl放到前面 等所有的回发完成了 在让他浏览文件
      

  7.   

    把刷新的放在updatepanel里面,其實就是用ajax
    fileupload不支持賦值,刷新就會丟失,這是無法避免的
      

  8.   

    北美神话:你说的把dropdownlist放到updatepanel里进行可行吗?我得去试试。tinkcn:呵呵呵,目前我采用的就是这种办法啊,不过这得期望操作员在使用时必须从上到下按步就班进行才行。
      

  9.   

    当然可行啊,只要不刷新,当然不会把值清空。updatepanel其实跟iframe是一样的。
      

  10.   

    我试了一下Updatepanel,好像还是不行啊,fileupload里的内容还是会消失的。