我有簡單的asp.net異步上傳,我試圖從本地系統上傳示例圖片,並嘗試執行簡單的webmethod上傳。隱藏字段值顯示爲undefined
Scenanrio:使用
上傳圖片上傳異步和它做工精細,並上傳至目的文件夾中。
現在試圖保存在隱藏字段fileupload.filename和測試,如果真的得到文件名時(這也適用)
現在嘗試發送,其中隱藏字段的值保存在VAR時出現問題。 這裏它顯示我爲undefined。
這裏是我的代碼:
Protected Sub fileUploadComplete(ByVal sender As Object, ByVal e As AsyncFileUploadEventArgs)
Thread.Sleep(1000)
Dim filename As String = System.IO.Path.GetFileName(fileUpload1.FileName)
fileUpload1.SaveAs(Server.MapPath("UploadFiles/") & RandomFolder.Value & "/" & filename)
lblFilename.Value = filename
End Sub
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
CreateFolder()
End If
Dim mypath As String = Server.MapPath("~/UploadFiles/")
myFilePath.Value = mypath
End Sub
<WebMethod()> _
公共功能FileDetails(BYVAL文件名作爲字符串,BYVAL mypath中作爲字符串)作爲字符串 //一些操作 返回 「True」 端功能
HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="style/bootstrap.css" rel="stylesheet" />
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
// This function will execute after file uploaded successfully
function uploadComplete() {
document.getElementById('<%=lblMsg.ClientID %>').innerHTML = "File Uploaded Successfully";
}
// This function will execute if file upload fails
function uploadError() {
document.getElementById('<%=lblMsg.ClientID %>').innerHTML = "File upload Failed.";
}
$(document).ready(function() {
$("#btnconvert").click(function() {
var FileFolder = $('#RandomFolder').val();
var filename = document.getElementById('<%=lblFilename.ClientID %>').val();
alert(FileFolder);
alert(filename);
$.ajax({
type: "POST",
url: "AsyncUpload.aspx/FileDetails",
data: JSON.stringify('{"Filename":"' + filename + '","mypath":"' + FileFolder + '"}'),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.
alert("Success");
}
});
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ToolkitScriptManager ID="scriptManager1" runat="server"/>
<div>
<asp:AsyncFileUpload ID="fileUpload1" OnClientUploadComplete="uploadComplete" OnClientUploadError="uploadError"
CompleteBackColor="White" Width="350px" runat="server" UploaderStyle="Modern" UploadingBackColor="#CCFFFF"
ThrobberID="imgLoad" OnUploadedComplete="fileUploadComplete" /><br />
<asp:Image ID="imgLoad" runat="server" ImageUrl="loading.gif" />
<br />
<asp:Label ID="lblMsg" runat="server" Text=""></asp:Label>
</div>
<asp:HiddenField ID="RandomFolder" runat="server"/>
<asp:HiddenField ID="FilePath" runat="server"/>
<asp:HiddenField ID="myFilePath" runat="server"/>
<asp:HiddenField ID="lblFilename" runat="server"/>
<button id="btndetails" class="btn btn-danger btnconvert" type="button">Convert file</button>
</div>
它仍然給我相同的空值 – coder