Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我需要提交通过使用ajax附加功能添加额外的字段

我需要提交通过使用ajax附加功能添加额外的字段
EN

Stack Overflow用户
提问于 2019-01-30 15:41:04
回答 2查看 886关注 0票数 0

我遇到了一个关于使用ajax提交附加字段的障碍。

这是对我的问题的描述。

我的HTML表单是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="append-fields">
    <input name="firstName[]" id="firstName" value="john"></input>
    <input name="lastName[]" id="lastName" value="Doe"></input>
</div>
<button onclick="appendFunction()" type="button">Add a new row</button>

单击按钮add a new row后,我会看到两个类似下面这样的字段

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    <div id="append-fields">
      <input name="firstName[]" id="firstName" value="anna"></input>
      <input name="lastName[]" id="lastName" value="Kondo"></input>
    </div>

现在,我需要使用ajax提交以下数据

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        firstName = 'john',lastName = 'Doe'
        firstName = 'anna',lastName = 'kondo'

但我只得到了一组这样的数据

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
     firstName = 'john',lastName = 'Doe'

下面是myscript

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
        <script>
        insert = [];
        insert[0] = $("#firstName").val();
        insert[1] = $("#lastName").val();
        $.ajax({
            url: 'myUrl',
            method: 'POST',
            data: {take:insert},
            error: function () {
            },
            success: function (response) {
                $('#overlay').addClass("hidden");
                jQuery('#body').html(response);
            }
        });
   </script>

这是我的PHP

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
      function myUrl(){
         $data = $_POST["take"];
       }

错误在哪里?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-30 16:18:33

您可以使用formdata

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    var data = new FormData($('form')[0]);
    data .append('extra', add_data);

或者按类序列化或seriallizeArray,我会断定

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var form_data = $('.post_these').serialize();

PS: post_these是输入字段类

在PHP中按名称访问

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$firstName = $_POST['firstName'];

或者当数据是数组时,创建一个对象

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$data= (object) $_POST['data'];
$data-YfirstName; // use this way    

PS使用这个来调试,在你的控制器中检查你收到的东西

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
echo '<pre>';
print_r($_POST);
echo '</pre>';
exit();
票数 0
EN

Stack Overflow用户

发布于 2019-01-30 15:45:50

您不应该通过ID获取数据值,因为不可能有多个相同的ID元素。

由于您使用的是jquery,因此使用$('form').serialize()$('form').serializeArray()作为数组输出,以获取所有表单输入及其值。但是,在执行此操作之前,您必须将这些输入包装在一个表单元素中。

或者像上面建议的那样,手动遍历元素并获得类似这样的值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54444282

复制
相关文章
WordPress的主题添加AJAX无刷新提交评论功能
有时主题在提交评论后会刷新整个网页才可获取资源,别人家的都不是这样的,以下可以改善评论后无刷新即可获取资源。
空木白博客
2019/04/23
1.7K0
通过Ajax提交表单的数据
当监听到表单的提交事件后,可以调用事件对象的 event.preventDefault()函数,来阻止表单的提交和页面的跳转,示例代码如下:
岳泽以
2022/10/26
2.3K0
为wordpress文章添加额外功能[移植自DUX主题]
.xControl { font-size: 15px; font-weight: bold; padding: 5px 0; box-shadow:0 0 20px #d0d0d0;/* 阴影 */ background-color: #FFFFFF;/* 背景颜色 */ border-bottom: 2px solid #e74c3c;/* 边 */ transition: all 0.1s linear; text-align: center; border-radius: 0 0 5% 5%; border-radius:4px; } .xControl a{ text-decoration: none; display: block; }
AlexTao
2019/12/13
1K0
为wordpress文章添加额外功能[移植自DUX主题]
$.ajax使用Form提交与Payload提交
Form解析可以直接从Request对象中获取请求参数,这样对象转换与处理相对容易,但在大批JSON数据需要提交时,可能会出现大量的数据拆分与处理工作,另外针对集合类型的处理,也是其比较薄弱的地方。
Bobby
2018/06/21
2.9K3
$.ajax使用Form提交与Payload提交
easyui validate 后 使用ajax提交
<form id="gfxwjForm" name="gfxwjForm" action="" method="post" enctype="multipart/form-data"> <div class="win_body_cln_1"> 名&nbsp;&nbsp;称:<input class="easyui-textbox" id="txt_mc" name="txt_mc" data-options="required:true" missingMessage="不能为空!" style="height:30px" value="${zywsptGfxwjb.mc}"> </div>
用户5640963
2019/07/28
1.3K0
使用ajax方法实现form表单的提交
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载。 写在前面的话 在使用form表单的时候,一旦点击提交触发submit事件,一般会使得页面跳转,页面间的跳转等行为的控制权往往在后端,后端会控制页面的跳转及数据传递,但是在某些时候不希望页面跳转,或者说想要将控制权放在前端,通过js来操作页面的跳转或者数据变化。 一般这种异步的操作,我们都会想到ajax方式,因此在实现了功能后就整理了这篇文章,通过ajax方法实现for
程序员十三
2018/03/15
3.1K0
ajax异步提交
已经好久没有更新过文章了,一天天的瞎折腾,这次记录一下ajax的使用,了解这个的起因是想实现后台发送邮件,了解到了异步调用,但是最终还是无法实现我的目的,毕竟程序都不一样,情况也不同,这里就分享一下吧。
用户8099761
2023/05/11
1.8K0
Git与通过Git添加提交文件
HTML5学堂-利利:前面几个礼拜,我们比较全面的介绍讲解了关于AJAX中相对比较高级的知识 - 跨域。本周周三的文章,想为大家介绍一款工具——Git。如果开发者们有进入大公司的发展的想法,这种工具是必不可少的。相信我们做开发的朋友们,SVN必然会接触,对于大公司来说,SVN略low,它们使用的通常是Git —— 分布式版本控制系统。 今日内容: 1 Git是什么 2 Git(分布式)与SVN(集中式)的区别 3 Git的安装与环境配置 4 在Git中进行版本创建 Git是什么? Git:分布式版本控制系统
HTML5学堂
2018/03/13
1.3K0
Git与通过Git添加提交文件
为 WordPress 添加前台 AJAX 注册登录功能
功能前台化已成为 WordPress 主题制作的一大趋势,抛却缓慢臃肿的后台不说,前台便捷操作能给用户带来良好体验。登录与注册是网站的重要功能之一,这篇文章将讲述如何实现漂亮的 WordPress 前台登录注册功能,此外观移植自觉唯主题。
小狐狸说事
2022/11/17
1.7K0
为 WordPress 添加前台 AJAX 注册登录功能
使用ajax提交必须alert才能赋值
一个奇怪的问题,在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存、部程序都没效果。。。。。。最后只好一行一行的alert看原因出在哪里;奇怪的是加上了alert之后就可以赋值,删掉alert后就又不可以了。百度了一下发现是因为ajax默认是异步执行的,也就是并没有等待请求完毕就开始执行下一行js语句了,导致赋值为null。
西门呀在吹雪
2020/11/09
8810
ajaxSubmit、ajaxSubmit添加额外数据
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/03
6300
Ajax使用formData提交带图片上传的表单
记录一下今天踩过的坑。。这么个问题居然搞了快两个小时了。ssm框架,前台form带图片上传,因为效验表单数据,所以不能直接submit。
sunonzj
2022/06/21
2.3K0
Clay SDK将为苹果ARKit添加手势追踪功能,不需额外硬件
苹果新的 ARKit开发者平台神奇之处就在于,在iPhone上创造精彩的AR体验只需要摄像头就够了,而不用其他额外的硬件。 Clay也想在不使用额外硬件的情况下,让iPhone实现手势跟踪。开发者可能
BestSDK
2018/03/01
1.1K0
Clay SDK将为苹果ARKit添加手势追踪功能,不需额外硬件
WordPress 技巧:给用户增加额外的联系字段
下面代码是新增新浪微博,腾讯微博,iMessage 三种联系方式,你也可以修改或者增加你自己需要的字段。把下面的代码贴到当前主题的 functions.php 文件,保存之后就可以在后台 > 用户 > 我的个人资料中的联系信息中见到效果。
Denis
2023/04/15
7350
ajax提交form表单
$.ajax({ cache: true, type: "POST", url:ajaxCallUrl, data:$('#yourformid').serialize(),// 你的formid,serialize()函数会把表单要提交的数据序列化成参数形式 async: false,
用户1503405
2021/09/23
3.4K0
ajax防止重复提交
 //防止重复提交     var pendingRequests = {};     jQuery.ajaxPrefilter(function( options, originalOptions, jqXHR ) {         var key = options.url;         i=0;         i++;         console.log(key+"aaaaaaaaaaa"+i);         if (!pendingRequests[key]) {          
windseek
2018/05/15
2.9K0
FastAPI(13)- 详解 Fields,针对 Pydantic Model 内部字段添加额外校验和元数据
FastAPI 提供的 Query、Path等其他公共 Param 类和 Body 类,都是 Pydantic 的 FieldInfo 类的子类
小菠萝测试笔记
2021/09/27
3.1K0
给mybatis添加自动建表,自动加字段的功能
以前项目用惯了hibernate,jpa,它有个自动建表功能,只要在PO里加上配置就可以了,感觉很爽. 但现在用mybatis,发现没有该功能,每次都加个字段,还是要重新改表结构,我个人认为很麻烦. 上网找了一下,发现有个开源的actable,但是这个不好用,不符合实际项目要求。 开源的actable会自动删除表字段,更改表类型,更改表长度,但实际项目中,只允许自动创建表,加表字段即可,改长度,删字段这些都会有风险,不符合实际意义的,而且该开源库使用其来比较复杂 没办法,唯有自己拿过来改造。
星痕
2018/09/12
5K2
创建联系表单页面并通过 Ajax 提交表单请求数据
回顾下上篇教程更新主题后的博客系统,可以看到顶部右上角导航菜单有两个链接,分别指向关于页面和联系表单页面:
学院君
2020/09/11
2.3K0
点击加载更多

相似问题

如何使用ajax和附加字段提交申请

20

jquery - colorbox插件,我需要通过ajax提交表单

11

我试图通过ajax将我自己的数据附加到提交的表单中,但是提交没有通过

229

如何通过JavaScript添加额外的字段

31

Symfony通过CreateAction添加额外的字段

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文