Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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_Jquery_If Statement - Fatal编程技术网

如果单击按钮,则在Javascript中更改变量

如果单击按钮,则在Javascript中更改变量,javascript,jquery,if-statement,Javascript,Jquery,If Statement,我做错了什么?如果单击该按钮,则变量s的值为10,否则为0。但它不起作用 $('button').observe('click', function () { var clicked = true; window.clicked = clicked; }); if (clicked) { var s = 10; } else { var s = 0; } 您正在if和else范围内创建一个变量S。 在if和else之外创建一个var s,然后赋值 或者你可以这样做

我做错了什么?如果单击该按钮,则变量s的值为10,否则为0。但它不起作用

$('button').observe('click', function () {
  var clicked = true;
  window.clicked = clicked;
});

if (clicked)
{
    var s = 10;
}
else 
{
    var s = 0; 
}

您正在if和else范围内创建一个变量S。 在if和else之外创建一个var s,然后赋值

或者你可以这样做:

   var s = 0;    
   $('button').observe('click', function () {
      s = 10;
   });
$('button').click(function () {
  object.s = 10;
});

var object = {};
Object.defineProperty(object, 's', {
  get: function() { 
    return this.value; 
  },
  set: function(newValue) {
    alert(newValue);
    this.value = newValue; 
  }
});

object.s = 0;

这样,您只能在单击后将10分配给s。以前的代码永远不会将任何值设置为10,因为您正在if和else范围内创建一个变量。 在if和else之外创建一个var s,然后赋值

或者你可以这样做:

   var s = 0;    
   $('button').observe('click', function () {
      s = 10;
   });
$('button').click(function () {
  object.s = 10;
});

var object = {};
Object.defineProperty(object, 's', {
  get: function() { 
    return this.value; 
  },
  set: function(newValue) {
    alert(newValue);
    this.value = newValue; 
  }
});

object.s = 0;

这样,您只能在单击后将10分配给s。您以前的代码永远不会将任何值设置为10,您到底想实现什么?为什么不在单击事件时设置
s=10
?像这样:

var s = 0;

$('button').click(function () {
  s = 10;
  console.log(s);
});

console.log(s);
或者,如果您试图观察变化的值,请尝试以下操作:

   var s = 0;    
   $('button').observe('click', function () {
      s = 10;
   });
$('button').click(function () {
  object.s = 10;
});

var object = {};
Object.defineProperty(object, 's', {
  get: function() { 
    return this.value; 
  },
  set: function(newValue) {
    alert(newValue);
    this.value = newValue; 
  }
});

object.s = 0;

你到底想达到什么目的?为什么不在单击事件时设置
s=10
?像这样:

var s = 0;

$('button').click(function () {
  s = 10;
  console.log(s);
});

console.log(s);
或者,如果您试图观察变化的值,请尝试以下操作:

   var s = 0;    
   $('button').observe('click', function () {
      s = 10;
   });
$('button').click(function () {
  object.s = 10;
});

var object = {};
Object.defineProperty(object, 's', {
  get: function() { 
    return this.value; 
  },
  set: function(newValue) {
    alert(newValue);
    this.value = newValue; 
  }
});

object.s = 0;
这可能对你有帮助-

    <button>
    click
    </button>

<script>
       var clickCounter=0;
        var s=0;
        alert(s);
        $('button').on('click',function(){
          var s=10;
            alert(s);
            });
</script>

点击
var-clickCounter=0;
var s=0;
警报;
$('button')。在('click',function()上{
var s=10;
警报;
});
最初,变量将存储值0,单击vutton后,变量将被赋值为10。

这可能会对您有所帮助-

    <button>
    click
    </button>

<script>
       var clickCounter=0;
        var s=0;
        alert(s);
        $('button').on('click',function(){
          var s=10;
            alert(s);
            });
</script>

点击
var-clickCounter=0;
var s=0;
警报;
$('button')。在('click',function()上{
var s=10;
警报;
});

最初,变量将存储值0,单击vutton后,变量将被赋值为10。

这对我来说很有效,谢谢。虽然它并没有完全按照我的要求去做,因为var s=10;函数内部需要没有“var”。这对我很有用,谢谢。虽然它并没有完全按照我的要求去做,因为var s=10;函数内部需要没有“var”。