我有些新手Javascript已经阅读了一些并且遇到了以下问题:我创建了一个全局var,我在一个函数中设置它并且我试图在另一个函数中调用它但是它是未定义的。 我已经用Google搜索了,似乎它被称为Javascript Hoisting Decleration。但我无法找到解决方案。这是我的代码。
<script type="text/javascript">
var value;
function getComboBox() {
var value = document.getElementById('vereniging').value;
console.log(value);
}
function isChanged() {
console.log(value);
var chboxs = document.getElementById('checkbox');
var show = document.getElementById('hidden');
if(chboxs.checked && value=='BNI') {
show2.style.display= 'block';
show.style.display='none';
}
if(chboxs.checked && value=='WTC') {
show2.style.display='none';
show.style.display='block';
}
} </script>
它使用第一个函数正确设置。
答案 0 :(得分:1)
create table t1 (ProductId INT, Sequence INT, Property VARCHAR(255)) insert into t1 values(100,1,'Size'); insert into t1 values(100,2,'Folder'); insert into t1 values(100,3,'License'); insert into t1 values(101,1,'Usage'); insert into t1 values(101,2,'Duration'); create table t2 (SrNo INT, ProductId INT, Property VARCHAR(255), PropertyValue VARCHAR(255)) insert into t2 values(1,100,'Size','10GB'); insert into t2 values(2,100,'Folder','/home/path'); insert into t2 values(3,101,'Usage','Database');
您正在声明一个新变量,而不是写入全局变量。
如果您想使用全局,请删除var value = document.getElementById('vereniging').value;
。