0
我正在研究一個漂亮的VB.NET ASP.NET網站,並嘗試連接拖放上傳以及「瀏覽」功能。如果你只是進入頁面並上傳,一切都有效。但是,如果您在頁面上的UpdatePanel中執行任何活動,則功能會中斷。所以,我在Page_Load中添加了這個:多次註冊jQuery FileUpload
' register the script that wires up the upload region
Dim cstext1 As String = "setupFileUpload();"
ScriptManager.RegisterStartupScript(upfiles, upfiles.GetType(), "UploadFileSetup", cstext1, True)
這一工程,但問題是,如果你運行多個操作的文件上傳似乎保持其註冊行爲。所以如果我上傳一個文件它會出現多次(例如 - 5個文件上傳發生在後臺。
我的javascript看起來像這樣。關於如何檢查處理程序是否已經註冊的任何建議?
片段:
function setupFileUpload() {
if ($('#fileupload').fileupload) return;
$('#fileupload').fileupload({
dataType: 'json',
url: '<%= ResolveUrl("AjaxFileUpload.ashx") %>',
add: function (e, data) {
$('#<%= lblErrorFileType.ClientID %>').css('display', 'none');
var valid = true;
var re = /^.+\.((txt)|(jpeg)|(jpg)|(png)|(gif)|(pdf)|(doc)|(docx)|(xls)|(xlsx))$/i;
$.each(data.files, function (index, file) {
if (!re.test(file.name)) {
$('#<%= lblErrorFileType.ClientID %>').css('display', '');
valid = false;
}
});
if (valid)...
對不起,應該提到用if($('#fileupload')。fileupload)返回的行;試圖避免多次註冊,但它似乎在updatepanel發回的情況下破壞了所有內容。謝謝。 – HelluvaEngineer