-1

そのように生成された入力があります

while($donnees = mysql_fetch_array($reqmodel)){
?>
<form action="#" name="order" method="post">
<div style='float:left;width:100%'>
<input type='text' name='order_item_sku[]' value='<?php echo $donnees['product_sku'] ;?>'>
<input type='text' name='product_quantity[]' value='0' id="qty[]">
<input type='text' name='product_name[]' value='<?php echo $donnees['product_name'] ;?>'>
<input type='text' name='product_id[]' value='<?php echo $donnees['virtuemart_product_id'] ;?>' style='width: 15px;'>
<input type='text' name='product_price[]' value='<?php echo $price = number_format($donnees['product_price']*1.196,0) ;?>' style='width: 25px;' id="prix[]">

次に、入力がいくつになるかわかりません。行ごとにtotal priceby を乗算するにはどうすればよいですか?product_quantity * product_price

4

3 に答える 3

0

ここにjQueryがあります

http://jsfiddle.net/b9chris/hSxkW/

次のような HTML 出力が与えられた場合:

<div>
<input name=qty />
<input name=price />
<span class=price></span>
</div>

<div>
<input name=qty />
<input name=price />
<span class=price></span>
</div>

これにより、span タグの価格フィールドが自動計算されます。

$('input[name=qty], input[name=price]').keyup(function() {
    var divParent = $(this).closest('div');
    var qty = $('input[name=qty]', divParent).val()-0;
    var price = $('input[name=price]', divParent).val()-0;
    if (qty >= 0 && price >= 0)
        $('span.price', divParent).text(qty*price);
});
于 2013-04-02T05:42:24.913 に答える
0

入力された配列に対して for ループを実行するだけです。

$total_price = 0;
$prices = $_POST['product_price'];
$quantities = $_POST['product_quantity'];
$c = count($prices);
for ($i = 0; $i < $c; $i++) {
    $p = (int) $prices[$i]; $q = (int) $quantities[$i];
    $total_price += $p * $q; 
}
于 2013-04-02T04:16:25.203 に答える