0

Word ドキュメントを更新するために動的にファイル アップロード コントロールを作成しようとしています。aspx ページに次のコードがあります。

  <asp:GridView ID="gvDetails" runat="server" AutoGenerateColumns="false" DataKeyNames="FilePath" EmptyDataText="No documents attached" >
                               <HeaderStyle BackColor="Purple" Font-Bold="true" ForeColor="White"  />
                              <Columns>
                                  <asp:TemplateField HeaderText="FilePath">
                                      <ItemTemplate>
                                          <asp:LinkButton ID="lnkDownload" runat="server" Text="My Document" OnClick="lbDownloadDocument_Click"></asp:LinkButton>
                                    <img src="Image/delete.jpg" alt="" onclick="AddFile()" /><br />
                                     <br />
                                          <asp:Button ID="Button1" runat="server" Text="Update" OnClick="Button2_Click" />
                                      </ItemTemplate>
                                  </asp:TemplateField>
                              </Columns>

                          </asp:GridView>

.cs ページに次のコードがあります。

   protected void Button2_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < Request.Files.Count; i++)
        {
            HttpPostedFile PostedFile = Request.Files[i];
            if (PostedFile.ContentLength > 0)
            {
                string FileName = System.IO.Path.GetFileName(PostedFile.FileName);
                PostedFile.SaveAs(Server.MapPath("~/Files/") + FileName);
            }
        }
    }

そして、私のスクリプトは次のとおりです。

    <script type="text/javascript">
        var i = 1;
        function AddFile() {
            i++;
            var div = document.createElement('DIV');
            div.innerHTML = '<input id="file' + i + '" name = "file' + i + '" type="file" /><img src="~/Image/delete.jpg" alt="Remove" onclick = "RemoveFile(this)" />';
            document.getElementById("divFile").appendChild(div);
        }
        function RemoveFile(file) {
            document.getElementById("divFile").removeChild(file.parentNode);
        }
    </script>

しかし、どういうわけかこのコードは機能していません。ファイルのアップロード制御についてはよくわかりません。それを手伝ってください。更新パネルを使用する必要がありますか?

4

0 に答える 0