Javascript JS函数不是';不匹配我的if语句逻辑
我现在正在努力学习javascript,所以我正在制作一个计算厨柜价格的计算器。我有3个品牌可供选择,每个品牌有不同类型的橱柜(底座、墙壁、台面)。所有这些的价格都不同,因此当我单击“计算”时,该功能会通过单选按钮查看选择的品牌以及通过下拉框选择的机柜类型,并计算价格。我在嵌套的if中有这些,但每当我单击calculate时,它似乎不会运行外部if的if块,而外部if是基于是否选择了品牌名称。到目前为止,当我单击Calculate时,除了表单自身重置之外,什么都没有发生。这是我的Javascript JS函数不是';不匹配我的if语句逻辑,javascript,html,Javascript,Html,我现在正在努力学习javascript,所以我正在制作一个计算厨柜价格的计算器。我有3个品牌可供选择,每个品牌有不同类型的橱柜(底座、墙壁、台面)。所有这些的价格都不同,因此当我单击“计算”时,该功能会通过单选按钮查看选择的品牌以及通过下拉框选择的机柜类型,并计算价格。我在嵌套的if中有这些,但每当我单击calculate时,它似乎不会运行外部if的if块,而外部if是基于是否选择了品牌名称。到目前为止,当我单击Calculate时,除了表单自身重置之外,什么都没有发生。这是我的 函数计算()
函数计算(){
var y=document.forms[“calculator”][“lintaines”]值;
如果(y==“”){
提醒(“请填写所有要求的表格”);
返回false;
}
var taines=document.getElementById('sqtaines')。值;
var crnUnits=document.getElementById('crnUnits').value;
if(document.getElementById(“empire”).checked=true){
document.getElementById(“Select1”).onchange=function(){
if(this.options[this.selectedIndex].value==1){
var baseprice=进尺*69.99;
var cornerPrice=crnUnits*50.99;
var totalPrice=基准价格+基准价格;
警报(“我是一个警报框!”);
document.getElementById('txtResults')。值=总价;
返回false;
}
else if(this.options[this.selectedIndex].value==2){
var baseprice=进尺*99.99;
var cornerPrice=crnUnits*50.99;
var totalPrice=基准价格+基准价格;
警报(“我是一个警报框!”);
document.getElementById('txtResults')。值=总价;
返回false;
}
else if(this.options[this.selectedIndex].value==3){
警报(“我是一个警报框!”);
var totalPrice=进尺*30.99;
返回false;
}
}
}
else if(document.getElementById('elite')。checked=true){
document.getElementById(“Select1”).onchange=function(){
if(this.options[this.selectedIndex].value==1){
var baseprice=进尺*79.00;
var cornerPrice=crnUnits*79.99;
var totalPrice=基准价格+基准价格;
返回false;
}
else if(this.options[this.selectedIndex].value==2){
var基准价格=进尺*179.00;
var cornerPrice=crnUnits*50.99;
var totalPrice=基准价格+基准价格;
返回false;
}
else if(this.options[this.selectedIndex].value==3){
var totalPrice=进尺*189.99;
返回false;
}
}
}
else if(document.getElementById('goldstar')。选中){
if(this.options[this.selectedIndex].value==1){
var baseprice=进尺*99.99;
var cornerPrice=crnUnits*89.99;
var totalPrice=基准价格+基准价格;
返回false;
}
else if(this.options[this.selectedIndex].value==2){
var baseprice=进尺*209.99;
var cornerPrice=crnUnits*89.99;
var totalPrice=基准价格+基准价格;
返回false;
}
else if(this.options[this.selectedIndex].value==3){
var totalPrice=进尺*212.99;
返回false;
}
否则{
警报(“未找到if”);
}
}
返回false;
}
厨房计算器
1.选择您的产品类型:
--选择您的产品--
底座柜
壁柜
台面
2.选择您的产品线:
帝国标准
厨房精英
金星+
3.输入线性进尺:
4.如果是机柜,有多少个角单元?
算计
5.结果:
Single=
说让这个变成那个。您希望比较两个方面是否相同,因此希望==
进行弱比较(转换类型),或者==
进行强比较(完全相同)if(document.getElementById(“empire”).checked==true)
寻求调试帮助的问题(“为什么此代码不工作?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现这些问题所需的最短代码。没有明确问题陈述的问题对其他读者来说是没有用处的。@Wright我也试过这样做well@Konovoloff如果这不能解决你的问题,那就意味着还有第二个问题。编辑您的答案,以反映您以这种方式修复的if语句的尝试。