在函数外部调用变量

时间:2017-11-23 04:01:43

标签: javascript jquery

如何使用var as以便可以从函数外部调用它?我尝试了很多东西,但它仍然没有用。

$(document).ready(function() { 
  $('#list').bind('click', function() {
    var as = $("#list").val(); 
  }); 
});

if (as == null) {
  d["subtypes"] = d; 
} else { 
  d["subtypes"] = as; 
}

3 个答案:

答案 0 :(得分:0)

在事件侦听器之外声明您的变量。

$(document).ready(function(){ 
var as="";
$('#list').bind('click',function(){
 as = $("#list").val(); 
}); 
}); 
if (as == null) {
 d["subtypes"] = d; 
}else{ 
d["subtypes"] = as; 
}

答案 1 :(得分:0)

function内声明的变量仅对函数是局部的。因此,在这种情况下,var as只具有单击处理函数的范围。

但如果在ready function内声明了这个变量,那么它就可以在就绪处理程序中定义的所有函数中访问

此代码段将有所帮助

$(document).ready(function(){ 
 var as; // here undefined, but it can be initialized with any value
$('#list').bind('click',function(){
  as = $("#list").val(); 
}); 
}); 
if (as == null) {
 d["subtypes"] = d; 
}else{ 
d["subtypes"] = as; 
}

答案 2 :(得分:0)

var as ="";
$(document).ready(function(){ 
$('#list').bind('click',function(){
 a=$("#list").val(); 
if (as == null) {
 d["subtypes"] = d; 
}else{ 
d["subtypes"] = as; 
}
}); 
}); 

随着jquery逐行执行..你必须如上所述声明变量globel。并且您必须在click事件中编写代码

if(as == null) 
        {
        d["subtypes"] = d; 
        }else{ 
        d["subtypes"] = as; 
        }

如图所示。声明变量,""var as ="";