【发布时间】:2014-01-04 09:46:09
【问题描述】:
我正在为订单表单构建动态下拉菜单以获取其他选项。选择这些选项后,会增加动态金额的值。下拉菜单的组织方式如下:
<option value=" . $name . ">" . $name . "</option>
这是通过 php,然后我只是回应它。我不知道如何做的是目前我的 javascript 被设置为通过选项值确定增加多少值,这让我查看数据库中的数字并且不知道他们订购了什么。所以我想做的是让 php 回显类似:<option value="Test"> Test - $10 </option>,我可以在其中使用 javascript 剪切 10 并将其添加到总数中。这是用于多个下拉菜单,目前我的 javascript 是:
function getDDValue(elementID) {
var element = document.getElementById(elementID);
var value;
// if the element exists
if (element) {
value = element.options[element.selectedIndex].value;
} else {
value = 0;
}
console.log(value);
return parseFloat(value);
}
function getBase() {
var value = 0;
var element = document.getElementById('base_cost');
value = element.value;
return parseFloat(value);
}
function getTotal() {
var optA = getDDValue("optA");
var quantity = getDDValue("quantity");
var optB = getDDValue("optB");
var optC = getDDValue("optC");
var base_cost = getBase("base_cost")
var totalPrice = '0';
totalPrice = parseFloat((+base_cost + +optA + +optB + +optC) * +quantity);
console.log(totalPrice);
document.getElementById('totalPrice').innerHTML = "<?php echo $name; ?> $" + totalPrice;
}
getTotal();
我会发布我尝试过的内容,但我什至不确定从哪里开始,而且我确信这已经完成,然后我必须在我的搜索中向谷歌询问错误的问题,所以我还没有找到这方面的任何资源。对于实现这一目标的最佳方式的任何帮助,我们将不胜感激。谢谢!
【问题讨论】:
-
为什么不能直接放在值里面?我不知道您所说的“这让我查看数据库中的数字却不知道他们点了什么”。
-
因为将有 3 个动态选择可能与任何选项相关,例如尺寸、颜色、形状等。如果我只看到 15,我不知道它们是否变得更大大小、不同的颜色等。我需要将值作为示例中的字符串传递给 mysql:
4oz但这不允许 javascript 只更新值(我不能将 4 盎司添加到 100 美元)。 -
这就是数组的用途。做
<option value="size[10]">Test - 10</option>,然后在PHP中这将是$_REQUEST['size'][10]。 -
我会看看这个,给我几分钟。感谢您的回复!
标签: javascript php forms