Javascript angularjs ng click can';是否不更改$scope变量?
我很困惑我有一个控制器看起来像这样Javascript angularjs ng click can';是否不更改$scope变量?,javascript,angularjs,Javascript,Angularjs,我很困惑我有一个控制器看起来像这样 angular.module('publicRegApp') .controller('CompanyNameController', function ($scope) { $scope.title = 'Title One'; $scope.onSearch = function(){ console.log("clicked"); $scope.title = "Title Two"; }
angular.module('publicRegApp')
.controller('CompanyNameController', function ($scope) {
$scope.title = 'Title One';
$scope.onSearch = function(){
console.log("clicked");
$scope.title = "Title Two";
}
});
在我的模板中,我有:
<button type="submit" class="btn btn-default" ng-click="onSearch()">Search</button>
搜索
当我单击该按钮时,控制台日志将被触发,但$scope.title不会更改。我很困惑,请帮助:-(我猜您的{{title}}in模板超出了控制器的范围。我强烈建议您检查;) $scope.$apply是一个非常糟糕的建议,它没有做你认为它在做的事情 ------------编辑--------- 请检查一下这个箱子
我猜模板中的{{title}}超出了控制器的范围。我强烈建议您检查一下;) $scope.$apply是一个非常糟糕的建议,它没有做你认为它在做的事情 ------------编辑--------- 请检查一下这个箱子
不完全确定原因,但有
<button type="submit">
这就是问题所在。改为
<button type="button">
修好了
然后我意识到我可能应该在按钮的父元素上使用ng submit,这也解决了问题(只要我将按钮保留为submit,当然)不完全确定原因,但有
<button type="submit">
这就是问题所在。改为
<button type="button">
修好了
然后我意识到我可能应该在按钮的父元素上使用ng submit,这也解决了问题(当然,只要我将按钮保留为submit)如果您注意以下事项,它就会工作:
ng app=“publicRegApp”
angular.module(“publicRegApp”)
更正为
angular.module(“publicRegApp”,[])
表示您没有
依赖于其他角度模块{{title}
在控制器范围内下面是一个工作示例:如果您处理好这些事情,它就会起作用:
ng app=“publicRegApp”
angular.module(“publicRegApp”)
更正为
angular.module(“publicRegApp”,[])
表示您没有
取决于其他角度模块{{title}
在控制器范围内下面是一个工作示例:在视图中插入的标题在哪里?你如何判断它没有改变?检查你的标题,就像{{title}}一样包装它。{{title}}包含在视图中,我通过模块配置分配视图和控制器$routeProvider-{{title}在加载页面时设置良好,但在单击时不会改变?更改
type=“submit”
到type=“button”
感谢Vicky提出的建设性意见。您的观点中插入了什么标题?你如何判断它没有改变?检查你的标题,就像{{title}}一样包装它。{{title}}包含在视图中,我通过模块配置分配视图和控制器$routeProvider-{{title}在加载页面时设置良好,但在单击时不会改变?更改type=“submit”
到type=“button”
谢谢Vicky的建设性评论我猜你的{{title}}in模板超出了controller的范围。我强烈建议检查它
然后如何第一次工作?嘿,谢谢你的回复,我不确定{{title}}怎么会超出范围,因为它被设置为“title One”。问题是它不会更新为'Title Two'?@user1803975你有没有尝试过这个{{Title}我用plunker编辑过帖子,它似乎有效,请检查它我猜你的{{Title}in模板超出了控制器的范围。我强烈建议检查它
然后如何第一次工作?嘿,谢谢你的回复,我不确定{{title}}怎么会超出范围,因为它被设置为“title One”。问题是它不会更新为“Title Two”?@user1803975你试过这个{{Title}吗?我用plunker编辑过这篇文章,它似乎有效,请在你选择
或
时检查它