首页 > 解决方案 > 表单操作不适用于表单内的表格

问题描述

我在这样的表格中有一个表格:

    <form action="file.php" id="myform" method="POST">
            <div class="table-responsive ">
                <table class="table table-hover" id="tblDetalle">
                    <thead class="thead-dark">
                        <tr>
                            <th>Id</th>
                            <th>Name</th>
                            <th>Quant.</th>
                            <th>Price</th>
                            <th>Total Price</th>
                        </tr>
                    </thead>
                    <tbody">
                        <?php
                        if(!isset($_SESSION['products'])){
                        }else{
                            foreach($_SESSION['products'] as $product=>$details){    
                                echo '
                                    <tr class="txtMult">
                                        <th scope = "row">'.$details["code_product"].'</th>
                                        <th scope = "row">'.$details["name_product"].'</th>
                                        <td><input class="val2" type="number" id="quantity" name="quantity" min="1" max="100"></td>
                                        <td class="val1">'.$details["price"].'</td>
                                        <td><span class="multTotal">0.00</span></td>
                                    </tr>                                
                                ';
                            };
                        }
                        ?>
                    </tbody>
                    <tfoot>
                        <tr class="font-weight-bold">
                            <td colspan=4>Total <span id="grandTotal">0.00</span></td>
                            <td></td>
                        </tr>
                    </tfoot>
                </table>
                <input type="submit" value="Submit"/>
            </div>
        </form>

我的实际问题是提交按钮不起作用,单击按钮时没有采取任何操作。我的想法是通过 POST 方法将表的所有内容发送到 file.php。

有一个以价格*数量更新的脚本,但我认为问题不存在。

<script  type="text/javascript">
    $(document).ready(function () {
        $(".txtMult input").keyup(multInputs);
        function multInputs() {
            var mult = 0;
            // for each row:
            $("tr.txtMult").each(function () {
                // get the values from this row:
                var $val1 = parseInt($('.val1', this).text())
                var $val2 = $('.val2', this).val();
                var $total = ($val1 * 1) * ($val2 * 1)
                $('.multTotal',this).text($total);
                mult += $total;
            });
            $("#grandTotal").text(mult);
        }
    });
</script>

有人可以帮忙吗?:)

标签: phphtmlformspost

解决方案


可以在表单中使用表格,但我认为您的方法是错误的。您可以将表格放入表单中,反之亦然,这样做通常很有用。但是你需要了解你在做什么。

表格和表单可以以任何一种方式嵌套。但是如果将表格放入表格中,则每个表格都必须完全包含在单个表格单元格中(实际上是一个 TD 元素)。因此,表格中的每一个都是完全独立的。所以试着把表格放在需要输入的表格单元格中


推荐阅读