gpt4 book ai didi

c# - 在 Asp.net 中使用 HTML5 的拖放上传文件

转载 作者:太空狗 更新时间:2023-10-29 15:50:32 26 4
gpt4 key购买 nike

我正在尝试使用 HTML5 的 DnD 和文件 API 上传文件。我不确定如何将表单数据发送到服务器,我尝试使用 XMLHttpRequest 发送但没有成功。这是我目前所拥有的。

    <body>
<form id="form1" runat="server" enctype="multipart/form-data">
<br />
<div id="drop_area">Drop files here</div> <br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button"/>
</form>
</body>

<script>
if (window.File && window.FileList && window.FileReader) {
var dropZone = document.getElementById('drop_area');
dropZone.addEventListener('dragover', handleDragOver, false);
dropZone.addEventListener('drop', handleDnDFileSelect, false);
}
else {
alert('Sorry! this browser does not support HTML5 File APIs.');
}
</script>
var files;
function handleDragOver(event) {
event.stopPropagation();
event.preventDefault();
var dropZone = document.getElementById('drop_zone');
dropZone.innerHTML = "Drop now";
}

function handleDnDFileSelect(event) {
event.stopPropagation();
event.preventDefault();

/* Read the list of all the selected files. */
files = event.dataTransfer.files;

/* Consolidate the output element. */
var form = document.getElementById('form1');
var data = new FormData(form);

for (var i = 0; i < files.length; i++) {

data.append(files[i].name, files[i]);
}

var xhr = XMLHttpRequest();
xhr.open("POST", "Upload.aspx"); //Wrong ? not sure.
xhr.setRequestHeader("Content-type", "multipart/form-data");
xhr.send(data);
}

C#:

     HttpFileCollection fileCollection = Request.Files;
for (int i = 0; i < fileCollection.Count; i++)
{
HttpPostedFile upload = fileCollection[i];
string filename ="c:\\Test\\" + upload.FileName;
upload.SaveAs(filename);
}

我知道我在 UI 中有一个按钮,但目前还没有使用。但是正如您所看到的,我正在尝试使用 XMLHttpRequest 发送请求。谁能建议我如何进一步进行。但是我的服务器端代码从未执行过,我不确定 XMLHttpRequest 是否成功。

最佳答案

天啊!!它在 IE 中运行良好,几天前我就在 Chrome v 28 中进行测试。在 IE 文件中可以正常上传。 (测试了多个文件上传)。所以为了让它在 Chrome 中工作,我不得不做一些改变。* 犯的错误

关于c# - 在 Asp.net 中使用 HTML5 的拖放上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18368034/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com