繁体   English   中英

在页面加载和单击按钮时运行定义的函数

[英]Run a defined function on page load and on button click

我正在尝试在页面加载时设置一些值,效果很好。 然后,我有一个按钮,它将在单击时更改值,效果也很好。 我遇到了一个问题,即如果再次单击按钮,值将重新更改。 我想运行与第一个函数相同的计算,并且试图在单击按钮时调用该函数,但是却收到一个未定义的错误。 这是我的代码

$(document).ready( function calcValues() {

$('#valueOne').val('1');
$('#valueTwo').val('0');

$("#quantity").keyup(function(){ 
$('#valueOne').val($('#quantity').val());



            if (document.getElementById('radioOne').checked) {
                    if(document.getElementById('quantity').value <= 9) {            
                  $('#valueOne').val('1');  
                $('#valueThree').val('0');   
                            }       
                    else if(document.getElementById('quantity').value >= 10 
&& (document.getElementById('quantity').value <= 24)) {             
                              $('#valueOne').val('0');  
                  $('#valueThree').val('1');
              }
          else if(document.getElementById('quantity').value >= 25) {
                $('#valueOne').val('0');  
                $('#valueThree').val('2');       
                        }
                }
                  else if(document.getElementById('radioTwo').checked) {
                              $('#valueOne').val($('#quantity').val());
                                $('#valueThree').val('0');
                }


         $('input[type="radio"]').click(function() {
            if($(this).attr('id') == 'radioOne') {  
                 if(document.getElementById('quantity').value <= 9) {
                  $('#valueOne').val('1');  
                $('#valueThree').val('0');   
                            }   

                     else if(document.getElementById('quantity').value >= 10 
&& (document.getElementById('quantity').value <= 24)) {
                  $('#valueOne').val('0');  
                $('#valueThree').val('1');   
                            }
               else if(document.getElementById('quantity').value >= 25) {
                $('#valueOne').val('0');  
                $('#valueThree').val('2');       
                            }
                    }

                    else if($(this).attr('id') == 'radioTwo') {  
                            $('#valueOne').val($('#quantity').val());
              $('#valueThree').val('0'); 

                    }
            })      
    }
)
})


$(document).on('click', '#buttonOne', function() {
         $('#valueThree').val('0'); 
         $('#valueOne').val('0'); 
         $('#valueTwo').val($('#quantity').val()); 
    })
    $("#quantity").keyup(function(){ 
         if(document.getElementById('#valueTwo').value > 0) {
             $('#valueThree').val('0'); 
             $('#valueOne').val('0'); 
             $('#valueTwo').val($('#quantity').val());
    }})



$(document).on('click', '#buttonTwo', function(calcValues) {
})

我在前两个函数中有计算,而在第三个函数中没有计算,因为我只是在尝试调用第一个函数

您应该定义函数calcValues并按如下方式调用它:

function calValues() {
// Set values
}

$(document).ready( calcValues)

$(document).on('click', '#button1', function() {
// Change Values
})

$(document).on('click', '#button2', calcValues) 

执行此操作的方法calcValues函数未定义,因此无法访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM