【发布时间】:2016-01-13 12:39:36
【问题描述】:
当后端的值发生变化时(在我的情况下是 Mysql,患者详细信息)对于任何其他用户(其他控制台),我想同时在另一个页面上更新该值(不刷新页面)。如何有可能的。我的代码如下。
myscript.js
var ajaxApp=angular.module('ajaxApp',[]);
ajaxApp.controller('ajaxController',function ajaxController($scope,$http){
$http.get('core/getdata.php').success(function(data){
$scope.patient=data;
});
});
我的 php 页面
<tr ng-animate="'animate'" ng-repeat="p in patient|filter:pnametext|limitTo:10">
<td><div class="btn btn-info">{{p.opNo}}</div></td>
<td><b><a href="getPtDetails.php?pId={{p.pId}}">{{p.pName | uppercase}}</a></b></td>
<td>
<div ng-switch on="p.pCatId">
<div ng-switch-when="1">
ONE
</div>
<div ng-switch-when="2">
TWO
</div>
<div ng-switch-when="3">
THREE
</div>
</div>
</td>
<td>{{p.pAge}}</td>
<td>{{p.pHusFather}}</td>
<td>{{p.phNumber}}</td>
<td><a href="patientQ.php?pId={{p.pId}}"><button class="btn btn-danger">Add to Queue</button></a></td>
</tr>
【问题讨论】:
-
您需要经常运行 AJAX 调用并更新视图。使用计时器并调用 AJAX 函数。
-
您可以使用通用的可共享服务来实现..这样数据将通过该服务在每个控制器之间共享.. 或者您可以使用事件
$broadcast来亲密并传递它中的数据..连接到该事件的列表器将在事件广播后被调用
标签: php html angularjs data-binding