2015-05-05 5 views
-1

Можно ли вызвать событие загрузки файла при нажатии кнопки?Как вызвать событие управления html без управления html

мне нужно что-то вроде этого

<input type="button" onclick="return buttonClicked()"> 

И вызывающее событие FileUpload должны прийти в buttonClicked() событие

function buttonClicked() 
    { 
     preventDefault(); 
     ...File upload event 
    } 

Я искал эту функциональность в течение некоторого времени, и это кажется довольно простым но не смогли найти решения для этого.

действительно нужна помощь на этом одном

+0

Вы просто пытаетесь вызвать событие или хотите загрузить файл? – Mathletics

+0

@ Матрица, запускающая событие, является первым шагом. Конечно, мне нужно загрузить файл (ы) – Alex

ответ

0

Вы можете использовать следующий JQuery плагин:

JQuery сайта ссылка: https://plugins.jquery.com/uploadfile/

Github ссылка: https://github.com/hayageek/jquery-upload-file

pluging предоставляет следующие события как обратный вызов:

$("#aDivforUpload").uploadFile({ 
 
    url: "http://hayageek.com/examples/jquery/ajax-multiple-file-upload/upload.php", 
 
    multiple: true, 
 
    fileName: "myfile", 
 
    onSubmit: function(files) { 
 
     $("#eventsmessage").html($("#eventsmessage").html() + "<br/>Submitting:" + JSON.stringify(files)); 
 
    }, 
 
    onSuccess: function(files, data, xhr) { 
 
     $("#eventsmessage").html($("#eventsmessage").html() + "<br/>Success for: " + JSON.stringify(data)); 
 
    }, 
 
    afterUploadAll: function() { 
 
     $("#eventsmessage").html($("#eventsmessage").html() + "<br/>All files are uploaded"); 
 

 
    }, 
 
    onError: function(files, status, errMsg) { 
 
     $("#eventsmessage").html($("#eventsmessage").html() + "<br/>Error for: " + JSON.stringify(files)); 
 
    } 
 
});

Вот демо с хорошей документацией для этого плагина:

http://hayageek.com/docs/jquery-upload-file.php

UPDATE: Вот jsFiddle я создал: http://jsfiddle.net/raishul/2x32tq3p/

+0

- это URL-адрес, где будут загружены файлы: http://hayageek.com/examples/jquery/ajax-multiple-file-upload/upload.php – Alex

+0

Какая серверная сторона язык, который вы используете? Вы можете указать его на странице со стороны сервера обработчика файлов. Проверьте обновление. – Raishul

+0

Я использую asp.net – Alex

0

Если вы Работая с asp.net, вы можете использовать общий обработчик и вызовите его через ajax для загрузки ваших файлов.

Если вы заинтересованы в этом, дайте мне знать, чтобы дать вам полный ответ.

В asp.net Вы можете использовать this Tutorial, это то, что я делаю. Это позволит вам загрузить файл без обратной связи. Есть другой способ, который загружается на стороне сервера с помощью asp.net control FileUpload, но я не рекомендую его.

+0

уверен, дайте мне полный ответ – Alex

+0

@Alex Ответ обновлен с помощью ссылки. – Baso