2009-10-20 165 views
1

我正在編寫一個需要用戶上傳文件到服務器機器的應用程序。所有用戶與用戶的交互都是通過JQuery UI模式彈出窗口完成的。我創建了一個測試頁面,以查看AsyncFileUpload控件的工作原理,並且一切正常。我將AsyncFileUpload添加到我需要的Web窗體中,在模式彈出窗口中,但由於某種原因,服務器端事件永遠不會被觸發。這個頁面與測試頁面的唯一區別在於,我通過查詢字符串發送一個變量,在頁面初始加載時,我將它存儲在視圖狀態中(所以它在將來的回發中不需要)。有任何想法嗎?ASP.Net Ajax AsyncFileUpload控件不會觸發服務器端OnUploadCompleted事件

感謝

+0

東西我忘了提的是,另一個區別是,考試的形式是直的網頁表單,而實際的網頁是網絡內容形式(它有一個母版) – tardomatic

+0

你試過我的答案? –

回答

1

當您使用AsyncFileUpload必須在「形式」標籤設置正確的參數,可以被放置在你的頁面或母版:

<form id="form1" runat="server" enctype="multipart/form-data" method="post"> 

如果您沒有設置正確的加密類型和方法UploadedComplete將永遠不會激發,並且您將無法獲得FileUpload.FileBytesFileUpload.HasFile僅在UploadedComplete執行期間返回true。

我想你沒有在你的模式彈出框上設置正確的enctype。

此外,Prevoius版本的AsyncFileUpload在Chrome上不起作用。實際版本(4.1.50731.0)解決了這個問題。

1

當AsyncFileUpload控件的事件處理,存儲在會話狀態,而不是視圖狀態的任何數據。

相關問題