javascript中需要的逻辑
我有一个选择,这是很好的工作,但我想要的是,如果选择了一个以上,然后10%的折扣必须添加,如何做到这一点 在选中时,Java脚本中的值会成倍增加javascript中需要的逻辑,javascript,Javascript,我有一个选择,这是很好的工作,但我想要的是,如果选择了一个以上,然后10%的折扣必须添加,如何做到这一点 在选中时,Java脚本中的值会成倍增加 //javascript function totprice(f,n,amt) { var tot=0; document.getElementById('lbl_tot'+n).value=amt*f;
//javascript
function totprice(f,n,amt)
{
var tot=0;
document.getElementById('lbl_tot'+n).value=amt*f;
for (var k=1; k<=document.getElementById('rowcnt').value; k++)
{
if(document.getElementById('lbl_tot'+k))
{
tot=parseInt(tot) + parseInt(document.getElementById('lbl_tot'+k).value);
}
}
document.getElementById('txttot').value=tot;
document.getElementById('txttotprice').value=tot;
}
HTML
您的选择标签应该是
<select name="amt" id="amt" onchange="return totprice(this.value,2,110);" multiple>
如果f=2且金额=110,则x=220。您需要执行parseIntvalue,默认基数为10
例如:
希望这有帮助 如何选择多个?它不是多重选择否它不是多重选择,在选择时,该值与此值相乘。值*110,但如果选择了多个,则如何传递折扣?我假设OP的意思是,如果所选选项的值>1…?它不是多重选择。如果选项值大于1,则只希望传递折扣在哪里传递折扣值??是否要将其传递到另一个页面、另一个函数或何处?是否要在javascript中传递折扣,如果选择了多个选项,则无折扣无问题:。。。如果这有助于您接受答案:
<select name="amt" id="amt" onchange="return totprice(this.value,2,110);" multiple>
var x = parseInt(f)*parseInt(amt);
var optionSelected = document.getElementById('amt').value; //optionSelected is nothing but this.value
if(optionSelected > 1)
{
//Offer discount
var x = parseInt(f)*parseInt(amt); //where f and amt is passed through function call
}
else
{
// Do nothing/ other logic
}