2016-07-26 85 views
-1

我有一个表单,并试图跟踪用户在此表单上所做的更改。 表格由单选按钮,下拉菜单和文本区域组成,当用户选择第一个下拉菜单时,会加载该文本框。声明一个全局变量并在其中存储一个值使用javascript

然后我决定数一数。如果用户再次选择下拉菜单,这意味着第二次 事情发生了变化。

我希望能够将结果= 1存储在全局变量中,以便可以在同一页面/同一视图上使用另一个 函数。我的应用程序是mvc

如何在视图上存储此全局变量以便其他JavaScript函数可以使用它?这可能吗?

  var counter = 0; 
       $("#MyPage") 
         .on("change", ":input", function() {    
          counter = counter + 1; 
          if (counter > 1) { 
           //This is the first time you are changing. 
           alert("Something has changed in index page");      
           var result = 1; 
          } 
       }); 
+0

我只是将日志推送到一个数组,而不是维护一个计数器... – dandavis

+1

'window.foo = bar' – gcampbell

+0

您正在面对上述实现的问题是什么? –

回答

-2

在前面只需使用result = 1,而不var

编辑:ssube是正确的,使用上面的方法。

+0

声明一个函数以外的变量*不给它*给它全球范围。它只是简单地拾取它所声明的模块或脚本。这种混淆可能来自w3schools,它提供了非常差的(有时是错误的)示例。请不要将它们用作参考。 – ssube

+0

这个答案是对的,这只是一个很差的练习;暗示“隐式全局变量”,这通常是一个错误。 – dandavis

相关问题