如何监听在另一个页面上发生的操作?

时间:2016-02-29 14:19:02

标签: javascript jquery angularjs

不确定我的“条款”是否正确,因为我是新手。

页面A:
显示新提交的问题的页面。

页面B:
用户可以提交新问题的页面。

如果在页面B上提交了新提交的问题,以便页面A刷新问题,如何使页面A“收听”或“知道”。

我只能使用Angular JS和JQuery库。

感谢您的帮助。

编辑:首先我是这个主题的新手,所以请解释一下downvotes。

其次:我是否需要涉及服务器?我可以以某种方式听取客户端事件吗?

1 个答案:

答案 0 :(得分:-1)

页面A:

<a id="sendData">Send Data to Page B </a>

var url = http://localhost/yoursite/writeToFile.php
$('a#sendData').click(
               $.ajax({ url: url, type: "POST", data:{test:'test'} })
                .done(function() {
                      $(this).append(' sent!');
               });
)};

第B页:

<div>Listening to Page A </div>

window.setInterval(function(){
 listenToPage1();
}, 5000);

 function listenToPage1()
{
    var url = http://localhost/yoursite/readFromFile.php
    $.get(url, function(data) { $('div').html(data);   });
}

<强> writeToFile.php

<?php
   $fp = fopen('data.txt', 'a');
   fwrite($fp, $_POST);
   fclose($fp);
?>

readFromFile.php

<?php 
   readfile('data.txt');
?>

假设您正在使用PHP。否则,您应该将这些脚本转换为后端语言。

Yoursite结构

www/
  /yousite
   readFromFile.php
   writeToFile.php
   page1.php
   page2.php
   data.txt

我很高兴看到为什么人们会低估这个解决方案。