Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.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函数_Javascript_Html_Button - Fatal编程技术网

在按钮点击链中执行javascript函数

在按钮点击链中执行javascript函数,javascript,html,button,Javascript,Html,Button,在我最初的帖子中,我不确定我应该读多少深度。以下是自发布jQuery答案以来我一直在做的工作: 我试图执行一项任务,要求用户从一系列按钮中选择并单击一个html按钮,然后从一系列按钮中选择另一个html按钮 基本上,我希望第一个按钮选择的值作为参数传递给一个函数,该函数将在用户单击第二个按钮时运行。我只是在学习javascript,我迷路了 多谢各位 HTML: 在js中设置一些全局变量。然后,在每个按钮上设置一些onClick事件,这些事件将继续并更改全局变量。然后,单击下一个按钮可以查看全局

在我最初的帖子中,我不确定我应该读多少深度。以下是自发布jQuery答案以来我一直在做的工作:

我试图执行一项任务,要求用户从一系列按钮中选择并单击一个html按钮,然后从一系列按钮中选择另一个html按钮

基本上,我希望第一个按钮选择的值作为参数传递给一个函数,该函数将在用户单击第二个按钮时运行。我只是在学习javascript,我迷路了

多谢各位

HTML:


在js中设置一些全局变量。然后,在每个按钮上设置一些onClick事件,这些事件将继续并更改全局变量。然后,单击下一个按钮可以查看全局变量中的值

<button onclick="myFunction()">Click me</button> 
点击我
在原始JavaScript中: HTML:


在jQuery中: HTML:

使用jQuery:

$('#buttonId').click(function() {
    //initialize the second button listener
    var data = $(this).attr('data');
    $('#button2Id').click(function() {
        yourFunction(data);
    });
 });

这种方法更好,因为它使用JavaScript作用域来避免全局变量。由于JavaScript(尤其是jQuery)有时会同时执行多个线程/函数,因此使用全局变量很容易出现问题。它们也很难测试且不安全。

是否可以从单击的特定按钮定义函数参数?
<button onclick="myFunction()">Click me</button> 
 <button class="button1" onclick="saveValue()" />
 <button class="button2" onclick="callMethod()" />
 myGlobalVariable = null;
 function saveValue(){
       myGlobalVariable = "Value That Was Selected";
 }

 function callMethod(){
       alert(myGlobalVariable + "I HAZ ACCESS TO GLOBALS!!!!");
 }
     <button class="button1" />
     <button class="button2" />
     myGlobalVariable = null;
     $('button.button1').click(function(){
             myGlobalVariable = "Value That Was Selected";
     });
     $('button.button2').click(function(){
            alert(myGlobalVariable + "I HAZ ACCESS TO GLOBALS!!!!");
     });
$('#buttonId').click(function() {
    //initialize the second button listener
    var data = $(this).attr('data');
    $('#button2Id').click(function() {
        yourFunction(data);
    });
 });