Открытие asp Fileupload управления из JavaScript - PullRequest
0 голосов
/ 12 сентября 2011

У меня есть asp Fileupload на моей странице aspx:

У меня есть кнопка asp. На ClientClick этой кнопки я открываю элемент управления загрузки файла из JavaScript следующим образом:

--------- javascript -------------

 function OpenFileDialog() {
 var result = document.getElementById(("<%=fu_Import.ClientID %>")).click();            
        return true;
    }

Файл fielDialog открывается правильно, но когда я выбираю любой файл и нажимаю кнопку «Открыть» в этом FileDailog, ничего не происходит. Я имею в виду событие Onclick этой кнопки Asp: не вызывается. Также не задано свойство filename элемента управления fileUpload.

protected void btnImportIdiomCSV_Click(object sender, EventArgs e)
{
    try
    {                  
        if (fu_Import.PostedFile.FileName == string.Empty)
        {
          // Error meessage
        }
        else
        {
            // Do something
        }

Ответы [ 2 ]

0 голосов
/ 12 сентября 2011

Используйте это:

 onclick="document.getElementById('<%=fu_Import.ClientID%>').click(); return false;"

например:

<a href="#" onclick="document.getElementById('<%=fu_Import.ClientID%>').click(); return false;">Upload</a>
0 голосов
/ 12 сентября 2011

Я почти уверен, что вам придется добавить свой код в метод Page_Load и проверить следующее:

  1. если вы отправляете обратно
  2. если длина файла PostedFile не равна нулю

В вашем случае это не событие нажатия кнопки, которая вызывает обратную передачу, поэтому она не вызывается.

Обычно люди загружают файлы после нажатия кнопки сохранения или чего-то подобного.

...