是否可以将字符串变量发送到JavaScript中?

是否可以将字符串变量发送到JavaScript中?,javascript,html,forms,function,Javascript,Html,Forms,Function,我正在开发一个函数,该函数允许根据用户在表单中的输入自动计算订单价格。用户将选择他们想要的服务的“类型”,并输入订单的“平方英尺” 问题是否是因为我试图将字符串变量设置为intiger值 当我按下表单上的按钮时,网页上没有打印任何内容 服务类型 园艺 装饰 击剑 地板 园林绿化 支票价格 函数calculatePrice(){ var小时数=4; var totalPriceHour=0; var-priceHour=0; var价格平方英尺=0; var totalSquareFt=0;

我正在开发一个函数,该函数允许根据用户在表单中的输入自动计算订单价格。用户将选择他们想要的服务的“类型”,并输入订单的“平方英尺”

问题是否是因为我试图将字符串变量设置为intiger值

当我按下表单上的按钮时,网页上没有打印任何内容


服务类型
园艺
装饰
击剑
地板
园林绿化
支票价格

函数calculatePrice(){ var小时数=4; var totalPriceHour=0; var-priceHour=0; var价格平方英尺=0; var totalSquareFt=0; var orderTotal=0; var材料=假; var type=document.getElementById(“type”).value; var square\u ft=document.getElementById(“square\u ft”).value; 如果(类型==园艺){ 价格小时=20; 价格平方英尺=3; }else if(类型==装饰){ 价格小时=20; 价格平方英尺=3; }else if(类型==环境美化){ 价格小时=30; 价格平方英尺=2; }否则,如果(类型==地板){ 价格小时=20; 价格平方英尺=2; }其他(类型==围栏){ 价格小时=30; 价格平方英尺=3; } 总价格小时=小时*价格小时; 总平方英尺=平方英尺*价格平方英尺; orderTotal=totalSquareFt+totalPriceHour; document.getElementById(“price”).innerHTML=orderTotal; }
输入值将返回字符串,因此请确保将类型变量与字符串进行比较,并在验证中添加引号。。。此外,如果您在表单中放置提交按钮,则会尝试向服务器发送请求

函数calculatePrice(){
var小时数=4;
var totalPriceHour=0;
var-priceHour=0;
var价格平方英尺=0;
var totalSquareFt=0;
var orderTotal=0;
var材料=假;
var type=document.getElementById(“type”).value;
var square\u ft=document.getElementById(“square\u ft”).value;
如果(类型==‘园艺’){
价格小时=20;
价格平方英尺=3;
}else if(类型==‘装饰’){
价格小时=20;
价格平方英尺=3;
}else if(类型=='andscaping'){
价格小时=30;
价格平方英尺=2;
}否则如果(类型=‘地板’){
价格小时=20;
价格平方英尺=2;
}否则,如果(类型==‘围栏’){
价格小时=30;
价格平方英尺=3;
}
总价格小时=小时*价格小时;
总平方英尺=平方英尺*价格平方英尺;
orderTotal=totalSquareFt+totalPriceHour;
document.getElementById(“price”).innerHTML=orderTotal;
}

服务类型
园艺
装饰
击剑
地板
园林绿化
支票价格

您的类型==需要一个字符串,在它的当前格式中,它是一个变量,并且未定义。如果我只使用一个“=”,它会工作吗?不,这会将变量设置为“type”所具有的值。您必须在园艺、装饰等周围使用“”或``符号,以便将它们解释为字符串。
if(type==“gardenting”)
-注意引号(
)双等号很好(或者三等号很好)但是您的条件语句应该在预期/测试的值周围加上引号:
type==“fenging”
如果没有引号,代码将需要某种名为fenging的变量