2012-06-21 2 views
1

Я использую ajaxToolkit: AsyncFileUpload в моем приложении asp.net. В событии на стороне сервера AsyncFileUpload1_UploadedComplete я пытаюсь сделать ярлык видимым и изменить его текст, но кнопка не включена.Загрузка AsyncFileUpload полностью не работает

Я использую на стороне клиента событие управления asyncfileupload, а так:

function UploadComplete(sender, args) { 
    var filename = args.get_fileName(); 
    var contentType = args.get_contentType(); 
    var text = "Size of " + filename + " is " + args.get_length() + " bytes"; 
    if (contentType.length > 0) { 
     text += " and content type is '" + contentType + "'."; 
    } 
    document.getElementById('<%= lblStatus.ClientID %>').innerText = text; 
} 

Все этикетки, кнопки и загрузки файлов управления находятся за пределами UpdatePanel. Я также попытался установить элементы управления внутри панели обновления, но тот же результат.

Отвод предложить решение

ответ

2

Это Asyncfileupload. Он работает асинхронно. Поэтому вы отправляете файлы в код. И это дает вам результат. Нет viewstate, без обратной передачи, без html-рендеринга.

Таким образом, вы не можете изменить ярлык или кнопку. Если вы этого хотите, используйте обычную файловую загрузку. Или ваши рабочие места на стороне клиента ..

0

У меня была аналогичная проблема, когда .. Вы не можете установить видеть истинным или ложным, но вы можете установить свой стиль .. Вот что я сделал ..

function OnClientAsyncFileUploadComplete(sender, args) {    
     //similar to visible = false; 
     document.getElementById('<%=lbl_Lable1.ClientID%>').style.display = 'none'; 

     //similar to visible = true; 
     document.getElementById('<%=lbl_Lable2.ClientID%>').style.display = 'inline'; 

     return true; 
    } 

Прошу прощения, я не буду очень помогать в настройке текста в ярлыке, поскольку у меня есть предопределенный текст в ярлыке, но вы всегда можете объединить свой код innertext или innerhtml с ним.

Смежные вопросы