ajax 업로드 중 매개변수 제출이 업데이트되지 않는 등 관련 문제_기본 지식
May 16, 2016 pm 05:46 PM이전에 인터넷에서 jQuery Ajax 업로드 플러그인을 다운로드했는데, 웹 페이지 왼쪽이 업로드 카테고리인데, 제가 구현하고 싶은 기능은 다음과 같습니다: 원래는 업로드 카테고리에 따라 다른 폴더를 만들려고 했습니다. 서버 측에서 파일을 저장하므로 업로드 분류 매개변수를 백그라운드로 전달해야 합니다. 이러한 업로드 카테고리는 데이터베이스에서 읽고 리피터를 사용하여 생성됩니다. 카테고리 중 하나를 클릭하면 스타일이 설정되고 카테고리 이름이 uploadCatlog 변수에 저장됩니다. 분류를 얻어서 백엔드에 전달할 수 있는데 이상한 점은 처음에만 정확하고 그 이후에는 매개변수가 매번 업데이트되지 않는다는 점입니다. 실제로 uploadCatlog는 업로드 플러그인의 onComplete 콜백 함수에도 사용되며 해당 값이 업데이트되었습니다. 이 업로드 플러그인은 처음 클릭할 때만 인스턴스화되고 매개변수가 백그라운드로 전달되므로 나중에 값이 변경되지 않는 것 같습니다. 이 문제를 어떻게 해결해야 합니까? 다음은 내 js 코드의 세부 사항입니다.
JavaScript 코드:
코드 복사 코드는 다음과 같습니다.
<script type="text/javascript">
$(function () {
var uploadCatlog;
//현재 선택된 마스터 페이지 탐색 모음 스타일 설정
$(" #menu .nav5").addClass("menu_active").siblings().removeClass("menu_active")
//카테고리 메뉴 스타일 및 탐색 메뉴 생성
$("# kllst li").click (function () {
$(this).addClass("currentli").siblings().removeClass();
uploadCatlog = $(this).text();
});
var btnUpload = $('#upload');
var status = $('#status')
btnUpload.click(function () {
if (uploadCatlog = = 정의되지 않음) {
status.text("먼저 업로드된 파일의 카테고리를 선택해야 합니다!").addClass('error')
return false;
}
new AjaxUpload(btnUpload) , {
action: 'handler /doUpload.ashx',
name: 'uploadfile',
onSubmit: function (file, ext) {
if (!(ext && /^(doc| docx|xls)$/.test( ext))) {
status.text('WORD, EXCEL 형식 업로드만 지원합니다!').addClass('error')
return false;
status.text('업로드 진행 중입니다...')
},
data: { "catlog": uploadCatlog },
onComplete: function(파일, 응답) {
status.text('' ).removeClass('error');
if (response == "success") {
var fimgtype;
if (file.indexOf(".doc" ) != -1 || file.indexOf(".docx") != -1) {
fimgtype = "단어"
}
if (file.indexOf(".xls") ! = -1) {
fimgtype = "excel";
}
$('<li></li>').appendTo('#files').html('<img src="images/' fimgtype '.png" alt="" /><br />[' uploadCatlog ']' file).addClass('success')
} else {
$ ('<li></ li>').appendTo('#files').text(file).addClass('error')
}
}
}); >});
}) ;
</script>
나중에 해결책을 찾았습니다. 즉, 인스턴스를 만든 후에는 변경되지 않습니다. 동적 매개변수를 설정하기 위한 onSubmit 콜백 함수의 SetData 메소드:
//이러한 메소드를 사용하여 AJAX 업로드를 구성할 수 있습니다
var upload = new AjaxUpload('# div_id',{action: 'upload.php'} );
//예를 들어 사용자가 무언가를 선택하고 일부 매개변수를 설정하는 경우
upload.setData({ ”catlog”:
Ajax 업로드 매개변수는 다양한 오류로 인해 항상 제출되는 문제이지만 문제를 해결하는 방법과 문제를 해결하는 가장 좋은 방법은 프로그래밍 과정에서 발생하는 문제를 해결하려는 경우 추가 연구할 가치가 있는 문제입니다. 당신은 여전히 공부하고 배워야합니다!
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

인기 기사
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌

인기 기사
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
7286
9


자바 튜토리얼
1622
14


Cakephp 튜토리얼
1342
46


라라벨 튜토리얼
1259
25


PHP 튜토리얼
1206
29

