是否可以在没有ng-change功能的情况下更改ng-model值?

时间:2017-11-09 03:16:41

标签: javascript angularjs

是否可以在没有ng-change功能的情况下更改ng-model值? 以下方法无法正常工作

<div ng-app="myApp">
<div ng-controller="MyCtrl">
<input id="checkbox" type="checkbox" ng-model="field">
 <div> {{field}} </div> 
</div></div>    

<script>
var myapp = angular.module('myApp', []);
myapp.controller('MyCtrl', function($scope){

if(document.getElementById("checkbox").checked){
$scope.field="YES";    

    }})

但使用以下代码对我有用

<div ng-app="myApp">
<div ng-controller="MyCtrl">
<input id="checkbox" type="checkbox" ng-model="field" ng-change="change_text()">

<div>{{field}}</div> 

  <script>
    var myapp = angular.module('myApp', []);
    myapp.controller('MyCtrl', function($scope){

    $scope.change_text = function() {  
    $scope.field="YES";        
    }})
  </script>

1 个答案:

答案 0 :(得分:2)

要完成您要执行的操作,您可以使用Warning: No configuration read, using builtin defaults! No response in specified timeout. Probably phone not connected. ng-true-value让您的模型成为布尔值以外的类型,而不会破坏与ng-false-value的双向数据绑定

例如:

ng-model

<input id="checkbox" type="checkbox" ng-model="field" ng-true-value="'YES'" ng-false-value="'NO'"> {{field}} ng-true-value的值作为字符串文字传递(包含在额外的引号中)。

http://plnkr.co/edit/hjuwOV6q6iZOaXv89M6x?p=preview