首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的onclick不能用?

为什么我的onclick不能用?
EN

Stack Overflow用户
提问于 2016-11-01 21:39:49
回答 1查看 1K关注 0票数 1

我是这个领域的新手,并且已经尝试了很长时间。您可以在这里看到我的简单版本:https://plnkr.co/edit/YeahrG28bT2izX8gMKor?p=preview

你能告诉我为什么我的点击这里不起作用吗?我的按钮是2signUp按钮,谢谢!

联署材料:

代码语言:javascript
运行
复制
var app = angular.module('myApp', []);

app.controller('mainControl', function($scope) {
  $scope.logged = false;
  $scope.visiter = true;
  var sub1 = document.getElementsByClassName("haha")[0];
  sub1.onclick=function(){
    $scope.logged = !$scope.logged;
  }
})

html:

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html lang="en" ng-app='myApp'>
<head>
    <meta charset="utf-8">
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
    <script src="MainViewController.js"></script>
</head>
<body ng-controller="mainControl">
        <div ng-show="logged">
            <button>1Sign Up</button>
            <button>Log In</button>
        </div>
        <div ng-show="visiter">
            <button class="haha">2Sign Up</button>
            <button>Log In</button>
        </div>
        <div ng-show="logged">
          hello
        </div>

</body>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-01 21:45:42

使用角度处理单击事件的方法,当您有角来为您工作时,不要使用任何document.getElementById()爵士乐。

这就是为什么你应该让角度来处理它。

数据绑定 数据绑定是一种在模型更改时自动更新视图的方法,也是在视图更改时更新模型的一种自动方式。这是很棒的,因为它将DOM操作从您必须担心的事情列表中删除。 https://angularjs.org/

使用角的ngClick

代码语言:javascript
运行
复制
var app = angular.module('myApp', []);

app.controller('mainControl', function($scope) {
  $scope.logged = false;
  $scope.visiter = true;
  $scope.signup = function() {
    $scope.logged = !$scope.logged;
    alert("ran the function");
  }
})
代码语言:javascript
运行
复制
<!DOCTYPE html>
<html lang="en" ng-app='myApp'>

<head>
  <meta charset="utf-8">
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
  <script src="MainViewController.js"></script>
</head>

<body ng-controller="mainControl">
  <div ng-show="logged">
    <button>1Sign Up</button>
    <button>Log In</button>
  </div>
  <div ng-show="visiter">
    <button id="haha" ng-click="signup()">2Sign Up</button>  <!-- use ngClick here! -->
    <button>Log In</button>
  </div>
  <div ng-show="logged">
    hello
  </div>
</body>

</html>

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40369089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档