2013-10-09 4 views
1

먼저, Ajax로 양식을 제출할 때 저의 지식 부족을 용서해야합니다. 결과적으로 나는 이걸로 할 수 있고 할 수없는 것을 정확히 알아 내려고 노력하면서 어리석은 질문 하나 또는 두 가지를 물을 수도 있습니다. 단지 (내가 일반적으로 Ajax 요청을 수행하는 방법을 보여으니 이제,저장을 위해 jQuery에서 ajax를 통해 파일을 내 서버로 보내려면 어떻게해야합니까?

$.ajax({ 
    url: "/SomeDir/SomePage.cshtml", 
    async: true, //sometimes this is false, depending on how I want this to operate. 
    type: "POST", //most of the time this is 'GET' but it depends on whether server-side changes will be taking place or sensitive data will be passed. 
    dataType: "html", //This has the potential to change a lot. 
    data: { someVar: someVarValue }, //any number of name/value pairs to send to the server with the request. 
    success: function (response) { 
     //success callback function code here. 
    }, 
    error: function (jqXHR, textStatus, error) { 
     //code to run if error occurs (usually displaying text showing the 'textStatus' and 'error' values. 
    } 
}); 

좋아요 :

둘째, 나는 보통 많은 같이 jQuery를 사용하여 간단한 Ajax 요청을 수행하는 방법을 알고 표준 jQuery 방식)이 부분에서 내가 어디에 있는지 알 수 있습니다. 내 목표에 대한 지금

:

내가 간단한 <input id="inFile" name="inFile" type="file" />을 가지고 집에서 만든 아래 <button>합니다. 버튼을 클릭하면 Ajax가 서버에 파일을 가져 와서 지정한 디렉토리에 저장하고 (그 부분에 대한 지침이 필요하지 않음) 페이지를 다시 업데이트합니다. 그 부분도 도와주세요).

내가 알아야 할 것은 페이지를 새로 고치지 않고 파일을 그대로 클라이언트 측에서 서버 측으로 이동하는 방법 (양식 사용 여부와 상관없이)입니다.

내가 Ajax에 대한 충분한 지식이 부족한 것으로 생각했다. type: "POST" 본질적으로 내가 요구하는 기능 중 일부를 제공 할 수도 있고 심지어 알지도 못한다.

$.ajax(); 함수의 "데이터"속성 (속성이라고도 함)으로 원하는 데이터를 보낼 수 있다는 것을 알고 있지만 그렇게해야한다면 저장 방법을 모릅니다. 파일을 $.ajax() 함수와 함께 보내기 위해 변수/객체/컬렉션에 저장하십시오.

내 지식이 부족하여 미안하지만 이전에 Ajax와 관련된 작업을 한 번도 해 본 적이 없으며이 중 하나를 찾지 못했습니다. 즉

: 정말 필요한 것은 내가 C 번호의 System.IO

+0

http://stackoverflow.com/questions/2320069/jquery-ajax-file-upload – cetver

+0

백엔드는 무엇입니까? – kgu87

+0

@ kgu87 WebMatrix (C#)가있는 ASP.NET 웹 페이지. 파일을 서버 쪽 페이지로 가져올 수만 있다면 거기에서 가져갈 수 있습니다. 나는 플러그인을 사용하지 않는 것을 좋아한다. 다른 질문에 링크 된 누군가는 이것을하는 HTML 5 방법을 제안한다. 그러나 IE 8이 그것을 지원하지 않을 것이라는 것을 나는 안다.즉, IE 8을 지원할 필요는 없지만 IE 8을 지원하지 못하게하는 유일한 방법입니다. 따라서이 브리지를 건너 뛰지 않으면 IE 8을 지원할 수 없습니다. ,하지만,해야만한다면, 나는 그렇게 할 것입니다. – VoidKing

답변

0

내가 사용하는 것이 HTML5와 순수한으로 저장 할 수 있도록 서버 측에 클라이언트 측에서 파일을 얻을 수 있습니다

javascript 또는 jquery 플러그인 (이전 버전의 브라우저에서 대체 할 수있는 파일을 다운로드 할 수있는 크로스 브라우저가 많이 있습니다. 이전 버전의 브라우저에 대한 대체 버전을 만들려면 여기에서 포맷해야합니다.) 그런 다음 게시 된 데이터를 서버 측의 파일에 쓸 수있는 ajax를 사용하여 서버 스크립트에 데이터를 보냅니다.

깨어있는 시간이 아니므로 자세히 이야기하지 않아도 용서해주십시오. 여전히 문제가 있으면 연락하십시오.

참고 : 웹 페이지에 대한 경험이 없지만 C#을 사용하기 때문에 MVC와 유사하다고 가정하므로 올바른 스크립트/함수에 아약스를 사용하여 데이터를 게시하면 문제가 없습니다. 언어에도 불구하고 파일.

+0

정보를 주셔서 감사합니다, 제이슨,하지만 저는 정말로이 문제를 해결했습니다. 내가 기억한다면, 위의 그의 코멘트에서 @ dootzky의 링크였습니다. – VoidKing

+0

또한 @ kgu87의 링크에는 유용한 정보가 많이 있습니다. – VoidKing

+0

그러면 대답으로 표시해야합니다. – Jason

관련 문제