我正在尝试使用<option>
变量,以便我可以使用它来计算产品的总价。
E.g。 <option>
是项目的数量。我需要用价格乘以得到总价。总计将显示在与下拉列表相同的页面上。如何将变量分配给选择选项?
<?php
if ($product->quantity < $product->max) $q = $product->quantity;
if ($product->quantity > $product->max) $q = $prodcut->max;
if ($product->quantity = $product->max) $q = $product->max;
for($i=1; $i<=$q; $i++){
echo '<option value="'.$i.'">'.$i.'</option><br/>';
}
?>
答案 0 :(得分:1)
如果我理解正确,您希望能够动态显示页面上的子项总数吗?
执行此操作的最佳方法是使用javascript(jQuery)。在浏览器上呈现页面后,它将不再在服务器端运行。 PHP是一种服务器端编程语言,因此一旦将HTML传送到浏览器就无法运行。
有两种解决方法。您可以使用ajax(链接到jQuery的ajax函数)通过javascript将选项值发送到php脚本,该脚本将计算价格并将其发回。
然而,由于它是一个非常简单的计算,不需要服务器端编程,所以最好只在客户端进行。例如。在jQuery中
jQuery(document).ready(function($){
$('select#qty').change(function(){
var price = parseFloat($('input#price').val()); // hidden input with price in it
var qty = parseInt($('select#qty').val()); // option selected with qty
var total = price * qty; // calculate total
$('div#total').text(total); // update the div showing the total
});
});