AngularJS进阶(十六)脏值检查

脏值检查

需求

    在项目开发过程中,需要对药店信息进行更改。如下图所示。现在的需求是:当药店信息没有发生变化时,点击“更新信息”按钮,提示“药店信息未做任何更改”。

实现

    可以利用angualr的脏值检查机制解决。

    由于对angular的脏值检测机制不是很了解,貌似也不太好学习。就考虑使用别的方法,也可以使用ng-change内置指令,通过控制业务逻辑实现。Demo如下:

View视图:

 

<input ng-model="addr_y" id="addr_y" type="text" ng-change="textChange(addr_y)" />

 

Controller控制器:

 

$scope.doUpdate = function(){
var change = instance.change;
 
if(!$scope.shopname){
alert("药店名称不能为空,请输入...");
return;
}
................................
if(!$scope.addr_y){
alert("银行纬度不能为空,请输入...");
return;
}
$scope.textChange = function(val){
//        alert('变化了');
        instance.change = true;
    }
//alert(change);
if(!change){
alert("药店信息未做任何更改");
}else{
appCallServer($http,"G016",{"mangid":localStorage.mangid,"shopid":"S"+$scope.phone,...............
"addr_x":$scope.addr_x,"addr_y":$scope.addr_y
},function(data){
//success function
alert("保存药店信息成功");
instance.change = false;
//window.location="index.html";
});
}
};

 

效果

当信息未做修改时

 

当信息修改时

 

 

 

附:angular架构图

 

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...