asp.net 파일 리 셋 없 이 업로드 방법 집합
6467 단어 asp.net새로 고침 없 이 업로드
swfUpload 가 져 오기 swfUpload 의 개발 패 키 지 는 js 인용 을 추가 하고 swfUpload.js 와 handler.js 파일 을 참조 합 니 다.swfUpload 에 대해 잘 모 르 고 의문 이 있 으 면이 문장페이지 초기 화 를 볼 수 있 습 니 다.
handler.js 파일 에 올 린 성공 적 인 이 벤트 를 수정 합 니 다.server Data 는 서버 측의 응답 입 니 다.
Uploadify 는 uploadify 개발 패 키 지 를 가 져 와 홈 페이지다운로드 하 다.,홈 페이지 문서,중국어 문서,홈 페이지 예제js 와 css 의 인용,jquery.uploadify.js,uploadify.css 를 추가 합 니 다.
(주:css 에서 uploadify-cancel.png 그림 파일 을 참조 하 는 경로 가 올 바 르 지 않 을 수 있 습 니 다.uploadify.css 파일 에서 스스로 변경 할 수 있 습 니 다)
페이지 초기 화
페이지 초기 화 시 많은 설정 을 지정 하고 업로드 에 성공 한 이 벤트 를 다시 불 러 올 수 있 습 니 다.data 는 서버 측의 응답 을 표시 합 니 다.
서버 쪽 업로드 처리 프로그램
//uploadify
$(function () {
$('#file_upload').uploadify({
// swf
'swf': '/uploadify/uploadify.swf',
//
'uploader': '/Admin/UploadFileHandler.ashx',
//
buttonText: ' ',
//
fileTypeExts: "*.zip;*.rar;*.doc;*.docx;*.xls;*xlsx",
onUploadSuccess: OnFileUploadSuccess
});
});
function OnFileUploadSuccess(file, data, response) {
//
if (data == 'noPermission') {
alert(' ');
}
if (data == 'Error') {
alert(' ');
} else if (response) {
alert(' ~~~');
$("#filePath").val(data);
}
}
uploadify
/// <summary>
///
/// </summary>
public class UploadFileHandler : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
//
if (context.Session["User"] == null)
{
context.Response.Write("no permission");
context.Response.End();
return;
}
try
{
//
//Filedata , , js
HttpPostedFile image_upload = context.Request.Files["Filedata"];
//
string fileExt = System.IO.Path.GetExtension(image_upload.FileName).ToLower();
// ,
if (!FileTypes.IsAllowed(fileExt))
{
return;
}
//
string timeString = DateTime.Now.ToString("yyyyMMddHHmmssfff");
//
string path = "/Upload/" + timeString + fileExt;
// 、
string serverPath = context.Server.MapPath("~/" + path);
//
image_upload.SaveAs(serverPath);
//
context.Response.Write(path);
}
catch (Exception ex)
{
context.Response.Write("Error");
//
new Common.LogHelper(typeof(UploadFileHandler)).Error(ex);
}
}
public bool IsReusable
{
get
{
return false;
}
}
}
public static class FileTypes
{
private static List<string> allowedFileTypes = new List<string>();
// json
private static string jsonFilePath = Common.PathHelper.MapPath("~/AllowedFileTypes.json");
/// <summary>
///
/// </summary>
public static List<string> AllowedFileTypes
{
get
{
return allowedFileTypes;
}
set
{
allowedFileTypes = value;
}
}
/// <summary>
///
/// </summary>
static FileTypes()
{
LoadFileTypesFromJson();
}
/// <summary>
/// json
/// </summary>
private static void LoadFileTypesFromJson()
{
string types = File.ReadAllText(jsonFilePath);
AllowedFileTypes = Common.ConverterHelper.JsonToObject<List<string>>(types);
}
/// <summary>
/// , json
/// </summary>
public static void FileTypesToJson()
{
string types = Common.ConverterHelper.ObjectToJson(AllowedFileTypes);
File.WriteAllText(jsonFilePath, types);
}
/// <summary>
///
/// </summary>
/// <param name="newFileType"></param>
public static void AddNewFileType(string newFileType)
{
AllowedFileTypes.Add(newFileType);
FileTypesToJson();
}
/// <summary>
///
/// </summary>
/// <param name="fileExt"> </param>
/// <returns> <code>true</code> </returns>
public static bool IsAllowed(string fileExt)
{
foreach (string item in AllowedFileTypes)
{
if (fileExt.Equals(fileExt))
{
return true;
}
}
return false;
}
}
이상 에서 말 한 것 이 바로 본문의 전체 내용 이 니 여러분 들 이 좋아 하 시 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
작업 중 문제 해결 - (win 2003 asp. net) Session 과 페이지 전송 방법 으로 해결 방안 을 정상적으로 사용 할 수 없습니다.또한 F 는 처음에 우리 의 BP & IT 프로젝트 팀 이 Forms 폼 검증 을 사용 했다 고 판단 할 수 있 습 니 다. 페이지 를 뛰 어 넘 는 것 은http://hr.bingjun.cc/MyTask/MyTas...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.