如何将数据从一个窗口发送到另一个窗口?

时间:2017-06-07 07:12:23

标签: javascript jquery

您能告诉我如何将数据从一个窗口发送到另一个窗口吗? 我父窗口上有一个按钮。点击该按钮后,我将移动到另一个页面(另一个页面中有成功按钮)。当我点击子窗口或其他窗口上的成功按钮时,我将重定向到父窗口。我想打印"成功"父窗口上的文字。

http://plnkr.co/edit/6IRDD0DHxK6A7mExWOUP?p=preview

$(function() {
  $('#f').on('click', function() {       
    // alert('ddd');
    window.open('a.html')
  })

   $('#succ').on('click', function() {        
    // alert('succ');
    window.open('index.html')
  })
})

3 个答案:

答案 0 :(得分:0)

请执行以下操作:

在您的父页面上

添加以下代码:

$(document).ready(function() {
   var referrer =  document.referrer;    //to get previous url
   if(referrer == 'a.html'){
       alert("success");    // here i am showing an alert box with success message, you can print it inside a div or span as per your need.
   }
});

注意:在Plunker上用这个替换“if condition”:

  if(referrer=='http://run.plnkr.co/Bwm0sBW4RRnrmWRA/a.html'){
       alert("success");    // here i am showing an alert box with success message, you can print it inside a div or span as per your need.
   }

并与之一起发送数据:

do something like this:
window.open('index.html','height=400, width=650, left=300, top=100, status=yes');
or
window.open("index.html?cid=hello");

就是这样。 :)

答案 1 :(得分:0)

您可以通过url参数将值传递给html页面。只需更改script.js文件中的代码即可。希望它会对你有所帮助。

$(function() {
  $('#f').on('click', function() {
    window.open('a.html?id=' + 123)
 })
 $('#succ').on('click', function() {
   window.open('index.html?id=' + 1)
 })
})

然后你可以从params获取id值。 谢谢

答案 2 :(得分:0)

您可以使用localStorage API来跟踪是否点击了该按钮。

每当用户点击按钮时,都会向localStorage添加一个新密钥(例如isClicked)。

当用户登陆主页面时,检查是否设置了该标志。如果设置,则显示成功消息。

<!-- index.html -->
<html>
  <body>
    <div id="result"></div>
    <button id="cta">GOTO Sub Page</button>
    <button id="clear">Clear Success</button>
    <script>
      window.onload = function(){
        var isClicked = localStorage.getItem("isClicked");
        if(isClicked){
          document.getElementById("result").innerHTML="Success";
        }
      }
      document.getElementById("cta").onclick=function(){
       window.open("sub-page.html");
      }
      document.getElementById("clear").onclick=function(){
        localStorage.removeItem("isClicked");
        document.getElementById("result").innerHTML="";
      }
    </script>
  </body>
</html>

<!--- sub=page.html -->
<html>
  <body>
    <div id="result"></div>
    <button id="cta">Activate Message</button>
    <script>
      document.getElementById("cta").onclick=function(){
        localStorage.setItem("isClicked","true");
        window.open("index.html");
      }
    </script>
  </body>
</html>

Sample Plunkr Implementation

PS:您也可以使用localStorage存储/检索其他与页面相关的值。您甚至可以通过存储JSON.stringify方法

给出的字符串表示来存储JS对象