Function $(“输入”).val();如果值在函数外部,则不返回该值

Function $(“输入”).val();如果值在函数外部,则不返回该值,function,scope,Function,Scope,此代码有效 let myTel = $("#tel").val(); $('button').click(function(){ console.log(myTel); }); 当我要在函数外部声明变量myTel时,我能做什么 因为在超级情况下,当让myTel=$(“#tel”).val()时加载输入没有得到vlaue,所以空let和on事件触发器回调显示来自let的smae值 在第二种情况下,当事件触发时,它获取该时间段内的值,从而从中获取实际的输入填充

此代码有效

let myTel = $("#tel").val();
$('button').click(function(){  
    console.log(myTel);  
}); 
当我要在函数外部声明变量myTel时,我能做什么


因为在超级情况下,当
让myTel=$(“#tel”).val()时加载输入没有得到vlaue,所以空let和on事件触发器回调显示来自let的smae值

在第二种情况下,当事件触发时,它获取该时间段内的值,从而从中获取实际的输入填充值

你可以这样做

$('button').click(function(){ 
    let myTel = $("#tel").val(); 
    console.log(myTel);  
}); 

可以在顶部保留未定义的变量。 当用户单击按钮时,myTel变量将被分配输入字段的值

let myTel=null;
$('button').click(function(){ 
   myTel= $("#tel").val(); 
   console.log(myTel);  
}); 

在首次加载脚本时,任何函数之外的代码都会运行,因此,它只会获得控件的默认值,很可能是空的。第二个示例在每次按下按钮时查找值。
let myTel=null;
$('button').click(function(){ 
   myTel= $("#tel").val(); 
   console.log(myTel);  
}); 
let myTel;
$('button').click(function(){  
  myTel = $("#tel").val();
  console.log(myTel);  
});