이 양식 제출이 있습니다.
<form action='upload.php' method='post' enctype='multipart/form-data' target='upload_target' onsubmit='startUpload();' >
업로드하기 전에 파일 크기를 얻으려고하는데 너무 크면 제출을 중지합니다.
iSize
올바른 파일 크기를보고하고 경고가 표시되지만 제출은 계속됩니다.
경고가 표시되면 업로드를 종료하려면 어떻게합니까?
function startUpload(){
var iSize = ($("#myfile")[0].files[0].size / 1024);
console.log(iSize)
if (iSize > 10) {
alert('file size to big');
return;
}
document.getElementById('f1_upload_process').style.visibility = 'visible';
document.getElementById('f1_upload_form').style.visibility = 'hidden';
return true;
}
function stopUpload(success){
var result = '';
if (success == 1){
result = '<span class="msg">The file was uploaded successfully!<\/span><br/><br/>';
}
else {
result = '<span class="emsg">There was an error during file upload!<\/span><br/><br/>';
}
document.getElementById('f1_upload_process').style.visibility = 'hidden';
document.getElementById('f1_upload_form').innerHTML = result + '<label>File: <input name="myfile" type="file" size="30" /><\/label><label><input type="submit" name="submitBtn" class="sbtn" value="Upload" /><\/label>';
document.getElementById('f1_upload_form').style.visibility = 'visible';
return true;
}
함수의 반환 값을 전달해야합니다.
<form action='upload.php' method='post' enctype='multipart/form-data' target='upload_target' onsubmit='return startUpload();' >
더 나아가서, stopUpload () 함수의 성공 부분은 프로세스에서 발생하는 form.submit ()을 고려하면 의미가 떨어집니다. iframe으로 보내거나 ajax를 사용하여 올바르게 사용하여 업로드해야합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다