首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在AJAX上区分多个表单

在AJAX上区分多个表单
EN

Stack Overflow用户
提问于 2019-02-25 14:17:01
回答 1查看 50关注 0票数 0

我有一个内含多个表单的php页面。

代码语言:javascript
复制
<form id="form_<?php echo $rowProduct['Product_ID'];?>">
    <a id="wh_<?php echo $rowProduct['Product_ID'];?>"><i class="fal fa-heart"></i></a>
    <input type="hidden" name="PID_<?php echo $rowProduct['Product_ID'];?>" value="<?php echo $rowProduct['Product_ID'];?>">
    <input type="hidden" name="mail_<?php echo $rowProduct['Product_ID'];?>" value="<?php echo $rowProduct['Mail'];?>">

这些表单是通过循环遍历MySQL上所有数据生成的。通过Product_ID,每个表单和输入都有其唯一的id。

下面是向数据库提交数据的ajax脚本。

代码语言:javascript
复制
<script>
    $('[id^=wh_]').click(function(e) {
        $.ajax({
            url: 'submit.php',
            type: 'POST',
            data: $("[id^=form_]").serialize(),
            success: function(data) {
                alert('Success add item');
            }
        });
        e.preventDefault();
    });
</script>

目前,这段代码成功地将数据插入到MySql中,但提交的数据始终是最后一个表单,无论单击哪个提交按钮。我正在使用AJAX提交这些表单,以实现无需刷新php页面的表单提交。

非常感谢您的每一次帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-25 14:19:38

尝试将此data: $("[id^=form_]").serialize(),更改为

代码语言:javascript
复制
data: $(this).closest('form').serialize()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54860461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档