Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从全局范围中删除var_Javascript_Jquery_Scope - Fatal编程技术网

Javascript 从全局范围中删除var

Javascript 从全局范围中删除var,javascript,jquery,scope,Javascript,Jquery,Scope,在本例中,我有两个动作: 当您添加用户数量时,它将根据输入中的价格和总价自动计算 当您已经添加用户数量>计算总金额>如果您在输入中单击“欧元-总金额”,该金额将转换为欧元 所以,每件事都很好——但我不喜欢“有用性”具有全球范围! 你知道如何将其本地化并保存工作版本吗 尝试了类似于: $('#user-quantity').keyup(function(){ var userQuantity = parseInt($(this).val()); if( userQuantity

在本例中,我有两个动作:

  • 当您添加用户数量时,它将根据输入中的价格和总价自动计算

  • 当您已经添加用户数量>计算总金额>如果您在输入中单击“欧元-总金额”,该金额将转换为欧元

  • 所以,每件事都很好——但我不喜欢“有用性”具有全球范围! 你知道如何将其本地化并保存工作版本吗

    尝试了类似于:

    $('#user-quantity').keyup(function(){
        var userQuantity = parseInt($(this).val());
        if( userQuantity >=1 && userQuantity <=200){
          valid(userQuantity);
        } else {
          $('#total-sum').val("error");
        }
      });
    
    
      $('#usd').on('click', function(){
        $('#eur').removeClass('greenChacked');
        $(this).addClass('greenChacked');
        valid(userQuantity);
      });
      $('#eur').on('click', function(){
        $('#usd').removeClass('greenChacked');
        $(this).addClass('greenChacked');
        valid(userQuantity);
      });
      $('#usd').trigger('click');
    
      function valid(userQuantity){
        if( $('#usd').hasClass('greenChacked') ){
          var usdCurr = userQuantity * 10 + 'doll';
          $('#total-sum').val(usdCurr);
        }
        if( $('#eur').hasClass('greenChacked') ){
          var eurCurr = userQuantity * 5 + 'eur';
          $('#total-sum').val(eurCurr);
        }
      }
    
    $('#用户数量').keyup(函数(){
    var userQuantity=parseInt($(this.val());
    如果(userQuantity>=1&&userQuantity在函数中定义变量(userQuantity)。它将通过关闭其他函数和回调而不具有全局作用域。请参阅此新函数

    新代码的开头如下所示:

    $(document).ready(function () {
        var userQuantity;
        $('#user-quantity').keyup(function () {
            userQuantity = parseInt($(this).val());
            if (userQuantity >= 1 && userQuantity <= 200) {
                setCurrency();
            } else {
                $('#total-sum').val("error");
            }
        });
    
    $(文档).ready(函数(){
    var用户数量;
    $(“#用户数量”).keyup(函数(){
    userQuantity=parseInt($(this.val());
    
    如果(userQuantity>=1&&userQuantity,您可以将代码包装在

    更多信息

    (function () {
        var userQuantity;
    
        $(document).ready(function () {
            //rest of your code 
        };
    }());