jQuery 进行异步同步上传文件
2015-01-28 09:12
267 查看
对于jQuery进行同步问题
使用ajax进行同步时使用:async :false, // 同步进行标识
使用post进行同步时使用: $.ajaxSetup({async : false});进行标识
实例:使用ajax:
/*文件异步上传实现*/
function ajaxImage() {
if($("#imgupload").val()==""){
infoBoxNotBtn("请先选择图片!");
timer= setTimeout(function(){
closeBox($('.box'),$('.yinying'));
},3000);
return false;
}
if(!checkFileType){
return false;
}
var $appRoot=$('.webApproot').text();
var $dataRoot=$('.webDataroot').text();
var url = $appRoot+"m/index?model=mfront_customerCenter&action=imageUpLoad";
$("#ifm").ajaxForm({
url : url, // 请求的url
type : "post", // 请求方式
dataType : "text", // 响应的数据类型
async :false, // 同步
success : function(data) {
var obj=strToJson(data);
if(obj.flag=='1000'){//文件上传成功
infoBoxNotBtn("头像修改成功!");
timer= setTimeout(function(){
closeBox($('.box'),$('.yinying'));
},3000);
}else if(obj.flag=='1001'){
infoBox('上传文件过大,请重新选择文件上传');
}else if(obj.flag=='1002'){
infoBox('上传文件不能为空!');
}
},
error : function(){
infoBox('很抱歉,数据加载失败!');
},
});
}
/*********************************************************/
post实例:
checkRegister : function() {
var $appRoot=$(".webApproot").text();
$.ajaxSetup({async : false});
if(!MobileCheck.checkMobile()){
infoBox("请填写正确的手机号!");
return false ;
}
if(!MobileCheck.checkPassword()){
infoBox("请填写正确的密码!");
return false ;
}
if(!MobileCheck.checkRePassword()){
infoBox("请重复输入正确的密码!");
return false ;
}
if($('#validCode_mobile').val()==''){
$('#v_vc_mobile').css('color','red');
$('#v_vc_mobile').text('请输入验证码!');
infoBox("请输入验证码!");
return false;
}
$('#regSubmit_mobile').val('正在提交...');
$('#regSubmit_mobile').attr('disabled', true);
pw1 = $("#pw1_mobile").val(),
pw2 = $("#pw2_mobile").val(),
reurl = $("#reurl").val(),
m_validCode = $('#validCode_mobile').val();
mobile = $('#mobile').val();
var read
= 0;
if($("#read_mobile").attr('checked') == true){
read = 1;
}else{
read = 0;
}
var post_param = {pw1:pw1,pw2:pw2,reurl:reurl,read:read,m_validCode:m_validCode,mobile:mobile}
$.post($appRoot+'m/index?model=mfront_login&action=doPcRegister' , post_param , function(data) {
var obj = strToJson(data);
$('#regSubmit_mobile').attr('disabled', false);
$('#regSubmit_mobile').val('注 册');
if(obj.flag == '111'){
window.location.href =$appRoot+'PCfengqi/loginRegister/registerErentrance.jsp';
}else if(obj.flag == '21036'){
$('#v_vc_mobile').show();
$('#v_vc_mobile').css('color','red');
$('#v_vc_mobile').text('验证码不一致');
infoBox("验证码错误,请重新填写!");
return ;
}else if(obj.flag == '888'){
infoBox("注册前必须阅读并同意协议");
return ;
}else if(obj.flag == '444'){
$('#v_pw_mobile').show();
$('#v_pw_mobile').css('color','red');
$('#v_pw_mobile').text('密码不一致');
infoBox("两次密码填写不一致,请重新填写!");
return ;
}else if(obj.flag == '21036'){
$('#v_vc_mobile').css('color','red');
$('#v_vc_mobile').text('验证码已经失效');
infoBox("验证码已经失效,请您点击重新发送!");
return ;
}else if(obj.flag == '21037'){
$('#mobile').css('color','red');
$('#mobile').text('手机号无效');
infoBox("手机号无效!");
return ;
}else{
$('#mobile').css('color','red');
$('#mobile').text('注册失败,请重新注册!');
infoBox("很抱歉,注册失败!");
return ;
}
});
}
};
使用ajax进行同步时使用:async :false, // 同步进行标识
使用post进行同步时使用: $.ajaxSetup({async : false});进行标识
实例:使用ajax:
/*文件异步上传实现*/
function ajaxImage() {
if($("#imgupload").val()==""){
infoBoxNotBtn("请先选择图片!");
timer= setTimeout(function(){
closeBox($('.box'),$('.yinying'));
},3000);
return false;
}
if(!checkFileType){
return false;
}
var $appRoot=$('.webApproot').text();
var $dataRoot=$('.webDataroot').text();
var url = $appRoot+"m/index?model=mfront_customerCenter&action=imageUpLoad";
$("#ifm").ajaxForm({
url : url, // 请求的url
type : "post", // 请求方式
dataType : "text", // 响应的数据类型
async :false, // 同步
success : function(data) {
var obj=strToJson(data);
if(obj.flag=='1000'){//文件上传成功
infoBoxNotBtn("头像修改成功!");
timer= setTimeout(function(){
closeBox($('.box'),$('.yinying'));
},3000);
}else if(obj.flag=='1001'){
infoBox('上传文件过大,请重新选择文件上传');
}else if(obj.flag=='1002'){
infoBox('上传文件不能为空!');
}
},
error : function(){
infoBox('很抱歉,数据加载失败!');
},
});
}
/*********************************************************/
post实例:
checkRegister : function() {
var $appRoot=$(".webApproot").text();
$.ajaxSetup({async : false});
if(!MobileCheck.checkMobile()){
infoBox("请填写正确的手机号!");
return false ;
}
if(!MobileCheck.checkPassword()){
infoBox("请填写正确的密码!");
return false ;
}
if(!MobileCheck.checkRePassword()){
infoBox("请重复输入正确的密码!");
return false ;
}
if($('#validCode_mobile').val()==''){
$('#v_vc_mobile').css('color','red');
$('#v_vc_mobile').text('请输入验证码!');
infoBox("请输入验证码!");
return false;
}
$('#regSubmit_mobile').val('正在提交...');
$('#regSubmit_mobile').attr('disabled', true);
pw1 = $("#pw1_mobile").val(),
pw2 = $("#pw2_mobile").val(),
reurl = $("#reurl").val(),
m_validCode = $('#validCode_mobile').val();
mobile = $('#mobile').val();
var read
= 0;
if($("#read_mobile").attr('checked') == true){
read = 1;
}else{
read = 0;
}
var post_param = {pw1:pw1,pw2:pw2,reurl:reurl,read:read,m_validCode:m_validCode,mobile:mobile}
$.post($appRoot+'m/index?model=mfront_login&action=doPcRegister' , post_param , function(data) {
var obj = strToJson(data);
$('#regSubmit_mobile').attr('disabled', false);
$('#regSubmit_mobile').val('注 册');
if(obj.flag == '111'){
window.location.href =$appRoot+'PCfengqi/loginRegister/registerErentrance.jsp';
}else if(obj.flag == '21036'){
$('#v_vc_mobile').show();
$('#v_vc_mobile').css('color','red');
$('#v_vc_mobile').text('验证码不一致');
infoBox("验证码错误,请重新填写!");
return ;
}else if(obj.flag == '888'){
infoBox("注册前必须阅读并同意协议");
return ;
}else if(obj.flag == '444'){
$('#v_pw_mobile').show();
$('#v_pw_mobile').css('color','red');
$('#v_pw_mobile').text('密码不一致');
infoBox("两次密码填写不一致,请重新填写!");
return ;
}else if(obj.flag == '21036'){
$('#v_vc_mobile').css('color','red');
$('#v_vc_mobile').text('验证码已经失效');
infoBox("验证码已经失效,请您点击重新发送!");
return ;
}else if(obj.flag == '21037'){
$('#mobile').css('color','red');
$('#mobile').text('手机号无效');
infoBox("手机号无效!");
return ;
}else{
$('#mobile').css('color','red');
$('#mobile').text('注册失败,请重新注册!');
infoBox("很抱歉,注册失败!");
return ;
}
});
}
};
相关文章推荐
- jquery 异步上传excel 文件并且进行了 前台动态展示 上传数量
- Struts1+jquery+jform插件实现文件同步和异步上传
- struts2 + ajax(由前台的form提交数据到后台,再根据form所调用返回获取的后台json格式的数据返回到前端,然后前端用jquery对json数据进行解析)==》》涉及文件上传的部分
- MVC文件上传04-使用客户端jQuery-File-Upload插件和服务端Backload组件实现多文件异步上传
- 使用libcurl进行异步并发访问与文件上传
- 如何在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作
- javascript及php笔记:自己动手写一个ajax异步上传文件的jquery插件
- jquery异步上传文件
- Jquery fileupload和nodejs实现文件异步上传
- 整合 jquery ajaxfileupload 文件异步上传实例
- JQuery的AJAX与Spring MVC实现异步文件上传
- jquery之与struts2整合异步上传文件时弹出下载对话框的解决方法
- jquery 判断当前上传文件大小限制上传格式 搭配thinkphp实现上传即预览(模拟异步上传)
- java+jquery form实现异步上传文件,并且成功返回
- 使用jQuery.form插件实现表单异步提交+上传文件
- jQuery异步上传文件插件ajaxFileUpload详细介绍
- jquery实现文件异步上传
- 异步 同步 文件上传 监听文件上传进度
- JQUERY插件JqueryAjaxFileUplaoder----更简单的异步文件上传
- Jquery fileupload和nodejs实现文件异步上传