先前,我从网上下载了一个jQuery的Ajax上传插件,网页的左侧是上传分类,想要实现的一个功能是如此这样的:我本来是打算在服务端根据上传分类建立不同的文件夹来保存文件的,因此这个就需要传一个上传分类参数给后台。这些上传分类是从数据库读出,用repeater生成的。当点击其中一个分类时就给他设置一个样式,并且将这个分类的名字保存到一个变量uploadCatlog中。我可以取到分类并传给后台,但是很奇怪的是只有第一次是正确的,以后的每次参数都不更新。其实在上传插件的onComplete回调函数中也用到了uploadCatlog,它的值也已经更新了。我感觉好像这个上传插件只在第一次点击的时候实例化并将参数传给后台,所以以后值都是不变的,应该怎么解决这个问题呢?下面是我的js代码细节:

JavaScript code:

$(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 == undefined) {

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 (file, response) {

status.text('').removeClass('error');

if (response == "success") {

var fimgtype;

if (file.indexOf(".doc") != -1 || file.indexOf(".docx") != -1) {

fimgtype = "word";

}

if (file.indexOf(".xls") != -1) {

fimgtype = "excel";

}

$('

').appendTo('#files').html('
[' + uploadCatlog + ']' + file).addClass('success');

} else {

$('

').appendTo('#files').text(file).addClass('error');

}

}

});

});

});

后来找到了一个解决方案,那就是:创建实例后就不会变了,可以在onSubmit回调函数中调用SetData方法设置动态参数,如下的代码及注释详情:

JavaScript code:

//可以使用这些方法来配置AJAX的上传

var upload = new AjaxUpload(‘#div_id',{action: ‘upload.php'});

//例如当用户选择了一些东西,设置一些参数

upload.setData({ ”catlog”:

ajax的上传参数提交,总是会因为各种各样的错误而出现问题,但是如何来解决问题,怎样使用最好的方法来解决问题,是个值得深究的难题,要想很好的解决编程过程中出现的问题,还是需要自己不断的钻研和学习!

ajax值上传不过去,ajax上传时参数提交不更新等相关问题相关推荐

  1. springboot文件上传,单文件上传和多文件上传,以及数据遍历和回显

    springboot文件上传,单文件上传和多文件上传 项目结构及pom.xml 创建文件表单页面 编写javabean 编写controller映射 MultipartFile类 @RequestPa ...

  2. ajax请求携带tooken_Spring Boot+Vue 文件上传,如何携带令牌信息?

    关于文件上传这块,松哥之前也写了好几篇文章了,甚至还有视频: Spring Boot+Vue+FastDFS 实现前后端分离文件上传 但是,之前和小伙伴们提到的方案,是基于 session 来做认证的 ...

  3. html5支持ajax和jQuery吗,使用HTML5文件上传与AJAX和jQuery(Using HTML5 file uploads with AJAX and jQuery)...

    使用HTML5文件上传与AJAX和jQuery(Using HTML5 file uploads with AJAX and jQuery) 诚然,Stack Overflow上有类似的问题,但似乎并 ...

  4. 前端通信:ajax设计方案(三)--- 集成ajax上传技术

    在此之前让我感慨一下现在的前端开发的氛围.我遇到好多人,给我的观念都是,这个东西这个框架有了,那个东西那个框架做了,前端嘛,学几个框架,这个拼凑一下那个拼凑一下就好了.其实我想问,东西都框架做了,那你 ...

  5. ajax iframe实现文件上传,iframe实现Ajax文件上传效果示例

    avascript部分 ajax 文件上传~~ window.οnlοad=function(){ var form=document.getElementsByTagName('form')[0]; ...

  6. php jquery ajax裁剪图照片,php+jquery+ajax无刷新图片上传裁切,模拟flash头像上传实例...

    这几天自己在写一个cms.之前在用到图片上传裁切的时候总是用的flash的,或者是swfupload之类的.用的还不熟练,所以今天就用ajax做一个图片上传裁切的实例.个人感觉还不错,现在就分享出来. ...

  7. mui ajax 文件上传,MUI的图片上传和压缩

    MUI的上传图片目前知道有两种方式,一种见前面文章中关于图片裁切时使用的base64作为字符串上传,另外一种则是本篇章中所使用的plus.uploader方式,它是一种真正意义上的文件上传,我们可以使 ...

  8. ajax上传 java_使用Ajax进行文件与其他参数的上传功能(java开发)

    文件上传: 记得前一段时间,为了研究Ajax文件上传,找了很多资料,在网上看到的大部分是form表单的方式提交文件,对于Ajax方式提交文件并且也要提交表单中其他数据,发现提及的并不是很多,后来在同事 ...

  9. 某OA ajax.do 未授权漏洞任意文件上传getshell复现

    某OA ajax.do 未授权漏洞任意文件上传getshell复现 0x00 简介 某OA A8 是一款流行的协同管理软件,在各中.大型企业机构中广泛使用. 由于某旧版本某些接口能被未授权访问,并且部 ...

最新文章

  1. 前端的一些常用DOM和事件归纳
  2. maven学习(上)- 基本入门用法
  3. ##MySql数据库表的操作与应用
  4. 43request对象 续
  5. python logging模块的作用及应用场景_Python logging模块原理解析及应用
  6. php301重定向跳转,php如何设置301重定向跳转
  7. jenkins用ssh agent插件在pipeline里实现scp和远程执行命令
  8. 在ubuntu下打开.TXT文件,中文显示为乱码
  9. 反恐精英起源服务器文件在哪,反恐精英起源地图
  10. 医疗管理系统-项目概述和环境搭建
  11. centos7 shell脚本开机自启动(亲测可用)
  12. 【狂神说】MySQL笔记
  13. Flink编程中遇到”scala.tools.reflect.ToolBoxError: reflective compilation has failed“的解决方法
  14. 服务端开发的实习总结
  15. Soft-NMS – Improving Object Detection With One Line of Code
  16. DE、SaDE、JADE、SHADE、L-SHADE算法整理
  17. win7安装office2010
  18. 京东顺丰江湖一战,在所难免!
  19. PCB设计基础知识与基本概念
  20. Java实现操作系统进程调度模拟程序+GUI图形化

热门文章

  1. Unix哲学,Microservices和DDD (2)
  2. 灰色简约三级CSS下拉菜单代码
  3. 任务队列和异步接口的正确打开方式(.NET Core版本)
  4. C#设计模式学习笔记-单例模式
  5. 图像识别DM8127开发攻略——开发环境搭建
  6. thinkphp中的AJAX返回ajaxReturn()
  7. BZOJ 1815: [Shoi2006]color 有色图 [Polya DFS 重复合并]
  8. php中的empty和isset
  9. mysql binaryVInstall
  10. hdu 4350 2012 多校 - 6