我有一个小表单来计算运费,这一切都很好。我希望用户点击Book Now
,然后填充字段。
所有字段都已正确填充,只是成本计算没有填充在表单上。
这是我的代价
的代码var values = [
[20,25,35,40],
[36,42,50,56],
[42,56,52,68],
[60,70,68,72],
];
function updateValue() {
var fromCountry = document.querySelector('input[name="from_country"]:checked').value;
var toCountry = document.querySelector('input[name="to_country"]:checked').value;
var totalValues = values[fromCountry-1][toCountry-1];
var quantity = document.querySelector('select[name="number"]');
var x = parseInt(quantity.value, 10);
if(fromCountry && toCountry) {
document.getElementById('cost').value = (totalValues * x);
}
}
这是html
<input type="text" id="cost" name="cost" value="0" disabled="disabled" />
然后另一种形式如下:
<label for="cost">Estimated cost</label>
<input type="text" id="cost" name="cost" value="<?php echo $_POST['cost'];?>">
所有其他字段填写正常但成本不是出于某种原因。
答案 0 :(得分:0)
我相信如果禁用了文本输入,其内容实际上并未在提交中进行POST。添加隐藏的输入并使用值填充 it ,它应该在请求中发送。
另一方面,没有理由不能使用您拥有的值在服务器端执行相同的计算。没有什么可以阻止一个精明的用户编辑页面上的“成本”,给自己一个很好的折扣。