我有一个文本框,它通过 ng-model=sampleValue
现在,我的要求是每当我单击按钮时,显示功能都应该被执行并且文本框的值应该更改为 Harish。但这不是我得到的结果。请看一下我在下面编写的代码:
var app = angular.module("myApp", [])
app.controller("mainController", [ "$scope", function($scope){
$scope.show = function(){
$scope.sampleValue = "Harish";
}
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body ng-app = "myApp">
<input ng-controller="mainController" type="text" ng-model="sampleValue"/>
<button ng-click="show()">Click Here</button>
</body>
提前谢谢你:)
最佳答案
目前您已经在输入元素上应用了 ng-controller
,这意味着 Controller 范围仅限于 input
DOM,因此 show
方法不会被调用。您应该将 ng-controller
移动到包装器元素(这里是它的 body
)。
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"> </script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body ng-app="myApp" ng-controller="mainController">
<input type="text" ng-model="sampleValue" />
<button ng-click="show()">Click Here</button>
</body>
关于javascript - Ng-model 没有按预期工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43044877/