Javascript 未捕获引用错误:未定义y(var)
这是一个很快就能解决的问题,我想和大家分享一下。。我不知道为什么。。但是Chrome和Opera——我还没有在Firefox上测试过——只是不想假设我的var(y)的值,而且在Edge和Explorer上也没有 代码的目标取决于选项选择变量y获得不同的值,从而获得变量Uf 我一周前开始学习JavaScript。。所以我真的很抱歉打扰你们大家!:)Javascript 未捕获引用错误:未定义y(var),javascript,html,Javascript,Html,这是一个很快就能解决的问题,我想和大家分享一下。。我不知道为什么。。但是Chrome和Opera——我还没有在Firefox上测试过——只是不想假设我的var(y)的值,而且在Edge和Explorer上也没有 代码的目标取决于选项选择变量y获得不同的值,从而获得变量Uf 我一周前开始学习JavaScript。。所以我真的很抱歉打扰你们大家!:) 函数uf(x){ 如果(x==null){y=1;} 如果(x==1){y=1200;} 如果(x==2){y=1550;} 如果(x==3){y=
函数uf(x){
如果(x==null){y=1;}
如果(x==1){y=1200;}
如果(x==2){y=1550;}
如果(x==3){y=1500;}
如果(x==4){y=1550;}
var Uf=y;
}
超滤
RS
RJ
服务提供商
镁
我最终做了以下工作:
HTML
谢谢你们的帮助 您不能在
上使用事件。某些浏览器不支持它们。在
上使用onchange
,但该函数不会失去其用途?在所有if语句之外定义y
y
是if语句内部的作用域变量,您试图在外部使用它。例如:函数uf(x){let y=0;if(x==null){y=1;}..
@Kavindra OP实际上使用y
作为全局变量,因为没有var y
。这在严格模式下不起作用,但y
绝对不适用于if
statement@L.Bravo错误消息与标记不匹配。您没有HTMLInputElement
实例。您的函数也很脆弱;为什么不把y值作为参数传入呢,例如uf(1)
,uf(1200)
,等等?尝试使用value-onchange而不是onclik,因为select基本上使用的是onchange,所以每次都要验证值……然后使用onchange获取值,这样就可以从每次更改中获取值select//mys.onchange=function(){}类似于为selectvar x=document.getElementById(“selectID”)
创建一个var,然后为它创建一个函数x.onchange=function()
其中if(x.value==“null”){y=1}
和Uf=y
?
function uf(x){
var y;
if ( x == null) { y = 1;}
if ( x == 1 ) { y = 1200; }
if ( x == 2 ) { y = 1550; }
if ( x == 3 ) { y = 1500; }
if ( x == 4 ) { y = 1550; }
var Uf = y;
}
<div>
<select id="selection" required>
<option value="value1">UF</option>
<option value="value2">RS</option>
<option value="value3">RJ</option>
<option value="value4">SP</option>
<option value="value5">MG</option>
</select>
</div>
var y = document.getElementById("selection").value;
var Uf = y;