使用AJAX更新面板的HTML输入无法正常使用

时间:2010-05-20 16:43:00

标签: .net html vb.net ajax input

我的页面上有一些更新面板,它们会执行一些异步后备,以便正确填充一些下拉列表。我的问题是,在我的页面上,我有一个处理一些文件上传的HTML输入。使用asyncpostbacks页面上的AJAX,当我逐步执行我的代码时,文件不会被上传。由于我的布局,无法使用postbacktrigger(非异步)。

这是我的代码:

      <div id="divFileInputs" runat="server">
                     <input id="file1" name="fileInput" type="file" runat="server" size="50" style="width: 50em"
                         onfocus="AddFileInput()" class="textbox" /></div>
                 <select id="selectFileList" name="ListBox1" size="5" style="width: 50em; text-align: left;"
                     class="textbox" />
                 <input id="RemoveAttachmentButton" type="button" value="Remove" onclick="RemoveFileInput()"
                     class="removebutton " />
             </div>

这是我背后的代码:

Protected Sub CopyAttachments(ByVal issueId As String)

    Dim files As HttpFileCollection = Request.Files
    Dim myStream As System.IO.Stream

    Dim service As New SubmitService.Service
    For i As Integer = 0 To files.Count - 1

        Dim postedFile As HttpPostedFile = files(i)
        Dim fileNameWithoutPath As String = System.IO.Path.GetFileName(postedFile.FileName)

        If fileNameWithoutPath.Length > 0 And issueId.Length > 0 Then
            Dim fileLength As Integer = postedFile.ContentLength
            Dim fileContents(fileLength) As Byte

            ' Read the file into the byte array.  Send it to the web service.
            myStream = postedFile.InputStream
            myStream.Read(fileContents, 0, fileLength)
            service.ClearQuestAttachToIssue(issueId, fileNameWithoutPath, fileContents)
        End If
    Next

    service = Nothing
End Sub

当我在服务声明中放入一个断点然后检查“files”的值时,计数为0.当我上传一个文件时,我希望它是2。

任何人都知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

好的,这是解决方案。我使用的提交按钮附加到AJAX asncypostback。因此不回发整个页面。我把它改成了一个回发更新面板和bingo..works!