微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从表中获取数据到PHP

我有一张桌子,我在其中使用j-query动态添加
我想从每个字段中获取数据到我的PHP中,并在按下提交时对其进行处理,或者我们可以使用j-query遍历表以获取所有值并将其放入数组中,我不知道如何要解决这个问题,请有人帮帮我.这就是我到目前为止

Jquery.js

 $(document).ready(function(){
        $(".add-row").click(function(){
            var name = $("#name").val();
            var email = $("#email").val();
            var markup = "<tr><td><input type='checkBox' name='record'></td><td>" + name + "</td><td>" + email + "</td></tr>";
            $("table tbody").append(markup);
        });

        // Find and remove selected table rows
        $(".delete-row").click(function(){
            $("table tbody").find('input[name="record"]').each(function(){
                if($(this).is(":checked")){
                    $(this).parents("tr").remove();
                }
            });
        });
    });

Index.PHP

<form>
            <input type="text" id="name" placeholder="Name">
            <input type="text" id="email" placeholder="Email Address">
            <input type="button" class="add-row" value="Add Row">
        </form>
        <table>
            <thead>
                <tr>
                    <th>Select</th>
                    <th>Name</th>
                    <th>Email</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td><input type="checkBox" name="record"></td>
                    <td>Peter Parker</td>
                    <td>peterparker@mail.com</td>
                </tr>
            </tbody>
        </table>
        <button type="button" class="delete-row">Delete Row</button>
        <button type="button" class="Submit">Submit</button>

这是一个Fiddle

解决方法:

创建新行时,可以在表单中添加隐藏的输入:

$(".add-row").click(function () {
    var name = $("#name").val();
    var email = $("#email").val();

    var markup = "<tr><td><input type='checkBox' name='record'></td><td>" + name + "</td><td>" + email + "</td></tr>";
    markup += "<input type='hidden' name='name' value='" + name + "'>";
    markup += "<input type='hidden' name='email' value='" + email + "'>";

    $("table tbody").append(markup);
});

然后在PHP方面,您将在$_POST数组中收到如下所示的内容

$_POST['name'], $_POST['email]

由于您希望一次发布多个,因此可以将它们分成一个数组,通过这样命名它们来称呼为customer:

markup += "<input type='hidden' name='customer[0][name]' value='" + name + "'>";
markup += "<input type='hidden' name='customer[0][email]' value='" + email + "'>";

然后,$_POST [‘customer’]将是一个数组数组,每个数组都有两个键名称和电子邮件

总的来说,它看起来像:

var x = 0;

$(".add-row").click(function () {
    var name = $("#name").val();
    var email = $("#email").val();


    var markup = "<tr><td><input type='checkBox' name='record'></td><td>" + name + "</td><td>" + email + "</td></tr>";
    markup += "<input type='hidden' name='customer[" + x + "][name]' value='" + name + "'>";
    markup += "<input type='hidden' name='customer[" + x + "][email]' value='" + email + "'>";
    x++;

    $("table tbody").append(markup);
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐