AJAX AsynchFileUpload остановить процесс загрузки - PullRequest
0 голосов
/ 09 февраля 2012

веб-сайт ASP.net с использованием AJAX AsyncFileUpload

Hello Experts,

На моей веб-странице у меня есть только два элемента управления: один представляет собой текстовое поле для ввода пользователем имени шаблона, а второйодин из них - AJAX AsyncFileUpload.

Когда пользователь нажимает кнопку «Обзор» моего элемента управления AsynchFileUpload и выбирает файл, я проверяю текстовое поле для «Пустого поля» с помощью события «OnClientUploadStarted». Если текстовое поле пустое, я хочу остановить процесс загрузки элемента управления AJAX.

После некоторых исследований я нашел ссылку на этом форуме, где пользователь реализует sender._stopLoad() метод внутри функции, которая обрабатывает событие «OnClientUploadStarted».После применения той же логики функция останавливает процесс загрузки, но я получаю следующее окно предупреждения из браузера:

Необработанное исключение: невозможно вызвать метод split из undefined

В моем коде нет метода разбиения.Эта ошибка появляется при использовании метода _loadStop () из AJAX asynchfileupload.Вот код, который я использую:

Функция JavaScript для обработки события:

function FileUpload_BeforeUpload(sender, args) {
   if ($get('<%=TemplateNameTextBox.ClientID%>').value == "") {
       sender._stopLoad();
   }
}

HTML:

<asp:TableRow>
   <asp:TableCell>Template Name:</asp:TableCell>
   <asp:TableCell>
      <asp:TextBox runat="server" ID="TemplateNameTextBox" Width="250px"></asp:TextBox>
   </asp:TableCell>
   <asp:TableCell>
       <asp:AsyncFileUpload runat="server" ID="AsyncFileUpload1"      
                OnClientUploadStarted="FileUpload_BeforeUpload"/>  
   </asp:TableCell>
</asp:TableRow>

Я проверил свой код на всех основныхбраузеры (IE, Firefox и Chrome) и я получаю одно и то же сообщение об ошибке.Ребята, вы сталкивались с этой проблемой?и если да, то как ты это исправил?

Спасибо за помощь.

YPC.

1 Ответ

1 голос
/ 10 мая 2012

Покажите ваше сообщение, потому что у меня была та же проблема, способ, которым я исправляю это, чтобы добавить правильное клиентское событие в элемент управления ajaxToolkit: AsyncFileUpload: OnClientUploadError="UploadError" и перехватить событие в коде JS:

var ifIgnoreError;

function UploadError(sender, e) {
  if (ifIgnoreError) {
    alert("Wrong file type");
  } else {
    alert(e.get_message());
  } 
}

Удачи.

...