javascript - ajax表单提交的时候传的data哪种和form一样?
ringa_lee
ringa_lee 2017-04-10 15:05:04
[JavaScript讨论组]

ajax在提交表单的时候一般是这样的:

 $.ajax({
        url: url,
        type: 'post',
        dataType: "json",
        data : {"kind":'savo'},
        success: function(data) {}
  });

这种和直接表单提交的:

<input type="text" name = "kind" />

是不是一样的?

怎么才能提交的数据和表单的name域一样?
用的很老的插件ajaxfileupload,服务端总是取不到附加的data

ringa_lee
ringa_lee

ringa_lee

全部回复(6)
怪我咯

推荐题主看看jQuery的Form插件,其中有ajaxForm和ajaxSubmit可以将表单直接用ajax提交。

jQUery Form

怪我咯

本质是不一样。一个是表单,一个xmlhttprequest。 你可以控制xmlhttprequest 的header 参数等,但是表单的header 你就不可以控制。取不到你想要的参数,你就要看看ajaxfileupload 的文档了。
另外推荐baidu 的webuploader , 那个做的不错,而且文档很详细。

伊谢尔伦

单从服务器接受post参数来说是一样的
在ajaxfileupload中,若想除上传文件外,还要附加其他数据,可以放在其options的data里,如:


$.ajaxFileUpload( { url:'doajaxfileupload.php', secureuri:false, fileElementId:'fileToUpload', dataType: 'json', data:{kind:'savo'}, //附加参数 success: function (data, status) { if(typeof(data.error) != 'undefined') { if(data.error != '') { alert(data.error); }else { alert(data.msg); } } }, error: function (data, status, e) { alert(e); } } )

具体可以参考你所使用的ajaxfileupload版本所属的文档

天蓬老师

不一样。这两个是不同的类型,所以取值的方式也是不同的。

第一种是post的json数据,第二种是form data数据。

PHP中文网

html5的,有一个FormData的对象,可以看下。

阿神

我使用的 ajaxfileupload 中不能添加另外的数据 除了 上传的文件。
所以你需要修改你 自己 的ajaxfileupload 中的 createUploadForm 方法,添加一个参数,并且 生成 对应的<input type="hidden" />

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号