Javascript 将5添加到产品价格并更新总计
我编写了一些javascript脚本,以便: 检查textarea是否为空,并获取false或true值 获取第一个选择下拉列表的值 获取第二个选择下拉列表的值 目的是在产品价格字段名“productprice”中添加5,并更新总字段名“total” 我在检查控制台时可以看到正确的值 但是total字段没有填充,没有用任何值更新 我的代码有什么问题?如果您有专业知识,我将不胜感激。谢谢 表格:Javascript 将5添加到产品价格并更新总计,javascript,Javascript,我编写了一些javascript脚本,以便: 检查textarea是否为空,并获取false或true值 获取第一个选择下拉列表的值 获取第二个选择下拉列表的值 目的是在产品价格字段名“productprice”中添加5,并更新总字段名“total” 我在检查控制台时可以看到正确的值 但是total字段没有填充,没有用任何值更新 我的代码有什么问题?如果您有专业知识,我将不胜感激。谢谢 表格: <form id='form' name='form'> <label class
<form id='form' name='form'>
<label class='control-label col-sm-2'>Inscription</label>
<div class='col-sm-10'>
<textarea name='desserttextmessage' id='desserttextmessage' class='form-control' rows='5'></textarea>
<div class='text-danger'></div>
<p class='help-block'></p>
</div>
<label class='control-label col-sm-2'>Décoration petites fleurs</label>
<div class='col-sm-10'>
<select class='form-control' id='dessertdecorflowerID' data-value='undefined' name='dessertdecorflowerID'>
<option value=''>** Veuillez saisir une option Décoration petites fleurs</option>
<option value='1'>Non</option>
<option value='2'>Oui</option>
</select>
<div class='text-danger'></div>
<p class='help-block'></p>
</div>
<label class='control-label col-sm-2'>Décoration Chocolat et fruits</label>
<div class='col-sm-10'>
<select class='form-control' id='dessertdecorchocolateID' data-value='undefined' name='dessertdecorchocolateID'>
<option value=''>** Veuillez saisir une option Décoration Chocolat et fruits</option>
<option value='1'>Non</option>
<option value='2'>Oui</option>
</select>
<div class='text-danger'></div>
<p class='help-block'></p>
</div>
<label class='control-label col-sm-2'>Prix</label>
<div class='col-sm-10'>
<input type='number' step='1' title='Prix' class='form-control' name='productprice' id='productprice' value='56'>
<div class='text-danger'></div>
<p class='help-block'></p>
</div>
<label class='control-label col-sm-2'>Total</label>
<div class='col-sm-10'>
<input type='number' step='1' title='Total' class='form-control' name='total' id='total' value='0'>
<div class='text-danger'></div>
<p class='help-block'></p>
</div>
脚本:
function onchangeDessertTextMessage() {
var textmessage = document.getElementById('desserttextmessage');
if(textmessage.value == '')
{
// alert('false');
return false;
}
else
// alert('true');
return true;
};
function updateTotal() {
var textmessage = onchangeDessertTextMessage();
var selectordecorflower = document.getElementById('dessertdecorflowerID');
var valuedecorflower = selectordecorflower[selectordecorflower.selectedIndex].value;
// console.log(valuedecorflower);
var selectordecorchocolate = document.getElementById('dessertdecorchocolateID');
var valuedecorchocolate = selectordecorchocolate[selectordecorchocolate.selectedIndex].value;
// console.log(valuedecorchocolate);
var productprice = document.getElementById('productprice').value;
var surcharge = 5;
var total = parseInt(productprice);
var totalsurcharge = parseInt(productprice) + parseInt(surcharge);
// console.log(textmessage);
// console.log(textmessage);
// console.log(valuedecorflower);
// console.log(valuedecorchocolate);
if (textmessage === true || valuedecorflower > 1 || valuedecorchocolate > 1)
{
console.log(totalsurcharge);
}
else if (textmessage !== true || valuedecorflower < 2 || valuedecorchocolate < 2)
{
console.log(productprice);
}
};
window.onchange = onchangeDessertTextMessage;
window.onchange = updateTotal;
您试图用innerHTML更新输入字段“total”——这对文本输入不起作用——您需要使用value
e、 g.document.getElementById'total'。值=产品价格 您有iftextmessage.value==返回,并且没有任何事件附加到窗口。是否有部分代码告诉浏览器更改总输入的值?即document.getElementBy'total'。值=总计;Matthew:对不起,我忘了复制这个部分,过一秒钟我会更新这个部分Matthew:我添加了丢失的代码Justinas:谢谢,我只返回我在另一个函数updateTotal中使用的true或false。我对JavaScript不太在行,所以也许这是一个专家的悲哀-万岁!当然,这是一个多么棒的。。。错误,工作正常,谢谢!