Javascript中的Switch语句没有切换
这个switch语句有什么问题?我将从选择菜单中选择该值,选项/值为1或2。当输入字段应该是1500美元时,它只显示1Javascript中的Switch语句没有切换,javascript,switch-statement,Javascript,Switch Statement,这个switch语句有什么问题?我将从选择菜单中选择该值,选项/值为1或2。当输入字段应该是1500美元时,它只显示1 $('[name="costfield"]').change(function(){ var cost = this.value; switch(cost){ case 1: cost = "$1500"; break; case 2: cost = "$25
$('[name="costfield"]').change(function(){
var cost = this.value;
switch(cost){
case 1:
cost = "$1500";
break;
case 2:
cost = "$2500";
break;
}
$('#exampleInputEstimate1').val(cost);
});
从输入中检索值时,会得到字符串,即“1”或“2”。 因此,必须将其解析为整数或浮点: 替换:
var cost = this.value;
与:
另一种解决方案是枚举switch/case中的字符串,正如前面所指出的:
switch(cost){
case '1':
cost = "$1500";
break;
case '2':
cost = "$2500";
break;
default:
break;
}
顺便说一句,养成在switch语句中编写默认大小写的习惯。switch语句根据需要使用严格的比较
为了正确使用,我建议在本例中使用字符串。在case语句中使用字符串- 您是否尝试调试成本变量以检查其值?
switch(cost){
case '1':
cost = "$1500";
break;
case '2':
cost = "$2500";
break;
default:
break;
}
$('[name="costfield"]').change(function(){
var cost = this.value;
switch(cost){
case '1':
cost = "$1500";
break;
case '2':
cost = "$2500";
break;
}
$('#exampleInputEstimate1').val(cost);
});