【发布时间】:2018-06-11 10:08:42
【问题描述】:
我正在尝试在 ASP.Net Web 表单页面中使用 jQuery 进行文件上传。这是我的jQuery代码:
var urlToSend = "Default.aspx/SaveNewMember"
var file = document.getElementById("MainContent_fu_image").files[0];
var formData = new FormData();
formData.append(file.name, file);
$.ajax({
type: "POST",
url: urlToSend,
data:formData,
processData: false,
contentType: false ,
success: function (response) {
displayMessage("success", "Added new team member");
},
error: function (message) {
displayMessage("warning", 'error' + message.statusText);
}
});
还有我的 VB 代码:
<System.Web.Services.WebMethod()>
Public Shared Function SaveNewMember() As String
Dim myPage = TryCast(HttpContext.Current.Handler, _Default)
Try
For Each file As String In myPage.Context.Request.Files
'do something
Next
Catch __unusedException1__ As Exception
Return ("Upload failed")
End Try
Return ("File uploaded successfully")
End Function
我遇到的问题是,当我运行我的代码时,我的 VB 代码上的断点永远不会被命中。此外,当我调试 jquery 代码时,我看到来自服务器的响应是页面的完整 HTML。使用 jQuery 进行异步文件上传的正确方法是什么?
【问题讨论】:
-
我想我知道问题出在哪里,但不知道如何解决。我意识到当用户提交表单时,它并没有转到指定的URL(Default.aspx/SaveNewMember),这是我页面上的一个功能。相反,它转到 Page_Load 函数。关于为什么以及如何解决这个问题的任何想法?
标签: jquery asp.net ajax vb.net