添加列的行

时间:2015-11-29 17:09:46

标签: javascript php html forms

在尝试了我在互联网上找到的几件事情(没有工作)后,我无法弄清楚如何在我的表格中添加一列。我正在尝试将所有android.support.v7.widget.Toolbar加起来并在Points所在的底部打印出来。

PHP代码:

Total

Javascript代码:

<?php 

function getProducts() {
    $query = 'SELECT * FROM `oc_product` ORDER BY `model` ASC';
    $params = array();
    $results = dataQuery($query,$params);
    foreach ($results as $result) {
        $product_id = $result['product_id'];
        $product_name = getProductName($product_id);
        $product_image = 'shop/image/'.$result['image'];
        $product_price = 1;
        echo '<tr>';
        echo '<td width="15px"><img src="'.$product_image.'" width="10px" height="10px" /></td>';
        echo '<td width="200px">'.$product_name.'</td>';
        echo '<td width="150px"><input type="number" value="0" min="0" max="3456" name="quantity" /></td>';
        echo '<td width="200px" align="center" data-product-price="'.$product_price.'">0</td>';
        echo '</tr>';
    }
}

function getProductName($product_id) {
    $query = 'SELECT `name` FROM `oc_product_description` WHERE `product_id` = ?';
    $params = array($product_id);
    $results = dataQuery($query,$params);
    return $results[0]['name'];
}

?>

表格:

<script>
$(function(){
    $("input[name='quantity']").on("input", function(){
        if((+$(this).val()) < (+$(this).attr("min"))){
            $(this).val($(this).attr("min"));
        } else if((+$(this).val()) > (+$(this).attr("max"))){
            $(this).val($(this).attr("max"));
        }

        var $outputCell = $(this).parent().siblings("[data-product-price]").eq(0); 
        $outputCell.html((+$outputCell.data("product-price") * +$(this).val()));
    });
});
</script>

- 编辑 -

更改了我的代码并取出了javascript函数<form> <table align="center"> <tr> <td align="center" colspan="4"><input type="text" name="username" placeholder="In-Game Name" /><br/><br/></td> </tr> <tr> <th></th> <th>Product Name</th> <th align="center">Quantity</th> <th align="center">Points Earned</th> </tr> <?php echo getProducts(); ?> <tr> <td colspan="4"><br/><br/></td> </tr> <tr> <td align="right" colspan="3"><strong>Total:</strong></td> <td align="center">0 Points</td> </tr> </table> </form> ,因为它已经过时并且无效。现在,将adding()列中的所有单元格相加并在Points Earned所在的最后一行打印出来的最佳方法是什么。

因此,如果通过Total计算每个Points Earned的总数,那么如何将其添加并将其显示在javascript code所在的表的末尾?< / p>

1 个答案:

答案 0 :(得分:0)

只需在php

中添加值即可
<?php 

function getProducts() {
    $total = 0;//           <---------- this line
    $query = 'SELECT * FROM `oc_product` ORDER BY `model` ASC';
    $params = array();
    $results = dataQuery($query,$params);
    foreach ($results as $result) {
        $product_id = $result['product_id'];
        $product_name = getProductName($product_id);
        $product_image = 'shop/image/'.$result['image'];
        $product_price = 1;
        echo '<tr>';
        echo '<td width="15px"><img src="'.$product_image.'" width="10px" height="10px" /></td>';
        echo '<td width="200px">'.$product_name.'</td>';
        echo '<td width="150px"><input type="number" value="0" min="0" max="3456" name="quantity" /></td>';
        echo '<td width="200px" align="center" class="price" data-product-price="'.$product_price.'">0</td>';
        echo '</tr>';
        $total += $product_price;//         <------- this line
    }
    echo "<input type='hidden' id='points' value='$total'";
}

打印像这样的值

<tr>
   <td align="right" colspan="3"><strong>Total:</strong></td>
   <td id="Total" align="center"></td>   <---- leave empty
</tr>

现在用脚本

$("#Total").html($("#points").val() + " Points");