Я отказался от Скотта Харвелла, не дав должного объяснения, почему я проголосовал. Я понизил голосование, потому что это МОЖЕТ быть сделано, и я делаю это последовательно. Мой код выглядит следующим образом:
HTML-тег:
<form id="inputForm1" method="POST" enctype="multipart/form-data" ACTION="">
<div id="file-attachment">
<div style="float:left;">file:</div>
<div id="file-sub" style="float:left;">
<input type="file" id="WebAccessFile" name="WebAccessFile" size="45" value="">
</div>
</div>
</form>
ключ enctype="multipart/form-data"
Мой оператор jQuery ajax выглядит следующим образом:
$.ajaxFileUpload({url:'/LonApps/FoxWeb.exe/EWI/ewiprocedures?Proc=addrelease',
secureuri: false,
fileElementId:'WebAccessFile',
dataType: 'text'
});
Я использую Visual FoxPro в качестве языка кодирования для этой функции, поэтому я опубликую свой код VFP, но вы можете просто адаптировать этот код к тому языку кодирования, который вы используете:
loAttachment = Request.FormFieldObject("WebAccessFile")
lcReleaseMessage = loAttachment.FileName
lcSaveFile = ""
IF loAttachment.ContentLength > 0
lcFileName = loAttachment.FileName
lcFileContent = loAttachment.Value()
lcSaveFile = "D:\Website\Publish\Depts\EWI\docs\" + lcFileName
SET SAFETY OFF
STRTOFILE(lcFileContent, lcSaveFile)
SET SAFETY ON
lcHTTPSaveFile = "/Publish/Depts/EWI/docs/" + lcFileName
ENDIF
Получает входное значение в виде loAttachment (lo обозначает Local Object). Затем, среди прочего, он обнаруживает, превышает ли длина содержимого вложения 0, если это так, то сохраняет вложение в локальном веб-каталоге для последующего доступа.