繁体   English   中英

如何在主要和新窗口中使用javascript中的全局变量

[英]how use global variable in javascript for main and newwindow

我有两个jsp(一个是主页,另一个是新窗口)和单个javascript文件。

MainPage和New Window具有“测试”“ ClickedCount”按钮。

首先,我在MainPage的“测试”按钮中单击3次。 然后我打开新窗口。
现在,我在newWindow的“测试”按钮中单击2次。
因此,我总共点击了5次。

每次单击时,我都会在javascript中计算按钮的点击次数。

但是mainwindow只显示3次,-> getTestButtonClickedCount ()
并且新窗口仅显示2次。 -> getTestButtonClickedCount ()

在这里,我使用相同的单个javascript文件( count.js

那么如何获得两个窗口的总clickCount(mainWindow + NewWindow) “测试”按钮。

MainWindow.jsp

<html>
     <head>
          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
          <script src="count.js" type="text/javascript"></script>
     </head>
<body>
 <input type="button" value="Test" onclick="countTestButtonClick()"/>
 <input type="button" value="ClickedCount" onclick="getTestButtonClickedCount();"/>

 <a href="#" onclick = "window.open('NewWindow.jsp','newwindow',
                        'width=400,height=200')">Click to open New window</a>
</body>
</html>

NewWindow.jsp

<html>
     <head>
           <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
           <script src="count.js" type="text/javascript"></script>
     </head>
<body>
  <input type="button" value="Test" onclick="countTestButtonClick()"/>
  <input type="button" value="ClickedCount" onclick="getTestButtonClickedCount();"/>
</body>
</html>

count.js

var clickCount = 0;

function countTestButtonClick()
{    
    clickCount++;
}

function getTestButtonClickedCount()
{
   alert("Total Number of clicked : " + clickCount);
}

帮我解决这个问题。 谢谢你的努力。

从newWindow中删除JS并更改为

 <input type="button" value="Test" onclick="opener.countTestButtonClick()"/>
 <input type="button" value="ClickedCount" onclick="opener.getTestButtonClickedCount();"/>

或者,如果一个窗口没有打开另一个窗口,则使用Cookie来存储点击次数,将其读取并更新并每次存储

暂无
暂无

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

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