Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 删除asp:FileUpload元素会使jQuery文件上载无法工作_C#_Jquery_Html_Asp.net_Jquery File Upload - Fatal编程技术网

C# 删除asp:FileUpload元素会使jQuery文件上载无法工作

C# 删除asp:FileUpload元素会使jQuery文件上载无法工作,c#,jquery,html,asp.net,jquery-file-upload,C#,Jquery,Html,Asp.net,Jquery File Upload,我正在做旧表单的新版本,一切都很好,但我对旧的FileUpload标签有问题。我正在使用jQuery多文件上传插件作为新的上传风格,它的工作非常棒!唯一的问题是,如果我删除旧的FileUpload元素,新的元素将不再工作。所以我的目标是制作一个表单,用户可以选择作为电子邮件附件发送的文件。我花了几个小时试图弄清楚这是怎么可能的,因为我也从c#文件中删除了对该元素的所有引用。有人有想法吗 <!-- PROBLEM STARTS--> <!-- if I delet

我正在做旧表单的新版本,一切都很好,但我对旧的FileUpload标签有问题。我正在使用jQuery多文件上传插件作为新的上传风格,它的工作非常棒!唯一的问题是,如果我删除旧的FileUpload元素,新的元素将不再工作。所以我的目标是制作一个表单,用户可以选择作为电子邮件附件发送的文件。我花了几个小时试图弄清楚这是怎么可能的,因为我也从c#文件中删除了对该元素的所有引用。有人有想法吗

<!-- PROBLEM STARTS-->
        <!-- if I delete or add Visible="false" attribute to the element the new upload system wont work anymore-->
        <asp:FileUpload ID="fuIssueAttachmentUppload" runat="server" Width="218px" EnableViewState="False"
            ViewStateMode="Disabled" />
        <!-- PROBLEM ENDS-->
        <p>
            <asp:Label ID="lblIssueAttachment" runat="server" Text="Attach file(s)"></asp:Label><br />
            <input type="file" class="multi" />
        </p>
        <asp:Button ID="btnSend" runat="server" Text="Send" OnClick="btnSend_Click" Width="290px"
            CausesValidation="False" />



这是我将上传的文件附加到电子邮件的部分

for (int i = 0; i < Request.Files.Count; i++)
        {
            HttpPostedFile file = Request.Files[i];
            mail.Attachments.Add(new Attachment(file.InputStream, file.FileName));
        }
for(int i=0;i
我设法修好了!新的输入标记没有runat属性。所以我唯一要做的就是删除旧标签,并将新的上传标签修改为:

<input runat="server" type="file" class="multi" />


A
将呈现A
。如果不再需要任何服务器端交互,您可以用其中一个替换它。您是什么意思?关键是我不想用old OK,所以如果你这么做了,你能解释一下什么“不起作用”吗。但是,是的,我忘了提到,如果我删除元素,它将不再附加电子邮件。因此,如果我有旧的和新的文件上传元素,那么新元素可以工作。但是,如果我只有新的元素,它将不再工作。有没有办法测试文件是否真的被请求了,或者是邮件附件错误?你说的“不附加电子邮件”是什么意思?你有没有收到错误?Request.Files中有文件吗?当它“不起作用”时到底有什么不同。