c# - 用于多次上传的 JavaScript 问题

标签 c# javascript html multi-upload

我正在尝试进行多文件上传。在此blog 的帮助下, 但出现错误。

代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="Upload_Multiple_Files._default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>

    <script language="javascript" type="text/javascript">
        var selectedFiles = '';

        function ReceiveServerData(response) {
            alert(response);
        }

        function uploadFile() {
            var fileList = document.getElementById("fileDivBox").getElementsByTagName("INPUT");

            for (i = 0; i < fileList.length; i++) {
                selectedFiles += fileList[i].value + "|";
            }

            CallServer(selectedFiles, '');
        }

        function attachFile() {
            var fu = document.createElement("INPUT");

            fu.type = "file";

            var br = document.createElement("<BR>");

            document.getElementById("fileDivBox").appendChild(fu);
            document.getElementById("fileDivBox").appendChild(br);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <a href="#" onclick="attachFile()">Attach a file</a> 
        </div>
    </form>
</body>
</html>

代码隐藏:

namespace Upload_Multiple_Files
{
public partial class _default : System.Web.UI.Page
{
    public void RaiseCallbackEvent(string eventArgument)
    {
        string[] files = (eventArgument.TrimEnd('|')).Split('|');

        WebClient client = new WebClient();

        foreach (string file in files)
        {
            client.UploadFile("http://localhost:3850/FileServer.aspx", "POST", file);
        } 
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        string path = @"C:\UploadedFiles\"; // server folder

        string[] keys = Request.Files.AllKeys;

        foreach (String key in keys)
        {
            HttpPostedFile file = Request.Files[key];

            file.SaveAs(path + file.FileName);
        }
    }
}
}

错误发生在行中:br = document.createElement("<BR>"); 它说“未处理的异常”。我是 javascript 的新手,因此没有任何线索是错误的。

最佳答案

document.CreateElement 函数将为您添加标签的 < > 部分。您的代码试图做的是创建 <<br>> 的元素。 , 这是无效的。仅使用 BR 的标记名称调用该方法:

br = document.CreateElement("BR");

这将创建一个 <br>如您所愿为您标记。

关于c# - 用于多次上传的 JavaScript 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12268064/

相关文章:

javascript - 我们如何在 angular2 typescript 中获得地理位置?

javascript - 缓慢滚动到顶部在 javascript 中不起作用

javascript - 带有 png 图像的 3D 动画

c# - 使图像可滚动

c# - 如何检测点击当前选定的 PivotItem 的标题

c# - 我想同时运行 3 个方法,其他方法等到任何方法完成

javascript - 服务器发送事件中的数据限制

javascript - 使用 Internet Explorer 时出现 js 错误 "expected identifier"

jQuery 为没有 alt-tag 的图像提供边框

c# - 我如何知道我使用的是什么 Windows 主题?