#c# #javascript #asp.net #ajax #image-uploading
#c# #javascript #asp.net #ajax #загрузка изображений
Вопрос:
Я в основном ищу сообщение и изображение с HTML-страницы на asp.net Страница C #, а затем эти данные будут отправлены на сервер.
Я нашел много решений для предприятий и веб-форм, но есть ли другой способ сделать это, избегая веб-форм? Я не большой поклонник сгенерированного HTML. В принципе, псевдокод будет выглядеть следующим образом.
<script type="text/javascript">
window.onload = function() {
button.onclick = function() {
http = new XMLHttpRequest();
url = "imageuploader.aspx";
params = <dunno how to post file data. Help?>
http.open("POST", url, true);
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.onreadystatechange = function () {
Test a bunch of stuff to see if image has been uploaded or we're still working on it
}
}
}
</script>
imageuploader.aspx
<%@ Page language="C#" validateRequest=false %>
<script language="C#" runat="server">
private void Page_Load (object sender, System.EventArgs e) {
<no clue what to do here since I've never done file uploading before>
}
<script>
Ответ №1:
Прежде всего, XMLHttpRequest не поддерживает загрузку файлов. Вы можете использовать плагин формы jQuery, плагин формы использует скрытый элемент iframe, чтобы помочь с задачей. Это распространенный метод, но он имеет присущие ему ограничения. Элемент iframe используется в качестве цели операции отправки формы, что означает, что ответ сервера записывается в iframe.
Также есть несколько других вариантов,
http://www.phpletter.com/Demo/AjaxFileUpload-Demo/
http://pixelcone.com/jquery/ajax-file-upload-script/
Теперь, на стороне сервера, запрос.Files предоставляет вам доступ ко всем размещенным файлам в коллекции array.