Javascript 尝试在更改时更新变量时出现未定义错误

Javascript 尝试在更改时更新变量时出现未定义错误,javascript,Javascript,我有一些代码运行得很好。但是,现在我正在尝试这样做,每次用户从select字段选择不同的选项时,都会重新计算pricecalc。现在我在控制台中得到一个未定义的错误 函数pricecalc(){ var a=document.getElementById(“字段0”); 变量数量=a.value.子字符串(0,1); var b=document.getElementById(“字段_1”); var类型=b值; 如果(数量='2'){ 风险值率='120'; }否则如果(数量='3'){ 风

我有一些代码运行得很好。但是,现在我正在尝试这样做,每次用户从select字段选择不同的选项时,都会重新计算pricecalc。现在我在控制台中得到一个未定义的错误

函数pricecalc(){
var a=document.getElementById(“字段0”);
变量数量=a.value.子字符串(0,1);
var b=document.getElementById(“字段_1”);
var类型=b值;
如果(数量='2'){
风险值率='120';
}否则如果(数量='3'){
风险值率='110';
}否则{
风险值率='100';
}
var价格=费率*数量;
如果(类型==“信用卡”){
var价格=价格*1.034;
}
var价格_各=(价格/数量);
var重定向https://www.paypal.me/“+价格;
document.getElementById(“成本”).innerHTML=“英镑”+价格;
document.getElementById(“costeach”).innerHTML='英镑'+price_;
}
这是HTML
两个人
三个人
4个人
5个人
6人
银行转账
借记卡
信用卡
总价
你好,世界!
每个价格
你好,世界!

这是一个JSFIDLE配置

在js菜单中,将“加载类型”更改为:
无换行符

它被设置为
onLoad
,所以我猜函数还没有创建


这是一个JSFIDLE配置

在js菜单中,将“加载类型”更改为:
无换行符

它被设置为
onLoad
,所以我猜函数还没有创建



代码似乎运行正常。您的错误必须与页面上的其他代码相关。投票关闭。@ScottMarcus它工作不正常。这就是为什么您看到的是“hello world”而不是价格值。在Fiddle演示中出现的错误是由于HTML中的内联“onclick”。JS Fiddle不喜欢这样。使用JS addEventListener可以获得相同的结果。更新的Fiddle:@Jimmy当您运行我为您创建的代码段中的代码时,它不会出错。您没有收到“Hello World”。代码似乎运行正常。您的错误必须与页面上的其他代码相关。投票关闭。@ScottMarcus它工作不正常。这就是为什么您看到的是“hello world”而不是价格值。在Fiddle演示中出现的错误是由于HTML中的内联“onclick”。JS Fiddle不喜欢这样。使用JS addEventListener可以获得相同的结果。更新的Fiddle:@Jimmy当您运行我为您创建的代码段中的代码时,它不会出错。你不会得到“Hello World”。@Vasan是的,但我不喜欢文档开头的
js
code:)谢谢你。这确实有效。然而,问题是,在我的网站上,它仍然不起作用。然而,当我将确切的代码复制到JSFIDLE中,并在没有包装的情况下运行它时,它确实起作用了——这意味着什么?在网站中何时何地加载代码?在表单之后加载javascript。我可以链接到您,一瞬间似乎
函数pricecalc
嵌套在
函数PHPFMG(formID)下{
。它不是全局的accessible@Vasan是的,但我不喜欢文档开头的
js
代码:)谢谢你。这确实有效。然而,问题是,在我的网站上它仍然不起作用。然而,当我将确切的代码复制到JSFIDLE并在没有包装体的情况下运行它时,它确实起作用了-这意味着什么?何时何地您是否正在网站中加载代码?表单后面的javascript。我可以链接您,一瞬间似乎
函数pricecalc
嵌套在
函数PHPFMG(formID){
下。它无法全局访问