我已经为简单的AngularJS JavaScript编写了代码但是没有正常工作只有根范围正在更新,而不是其他两个原因

时间:2018-01-03 11:18:32

标签: javascript html css angularjs

我编写了简单的AngularJS JavaScript代码,但无法正常工作。

只有根作用域正在更新,而不是另外两个我更新根目录时要更新FirstCtrlSecondCtrl的原因,但这不符合我的预期。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
    <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-animate.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <title>AngularJS</title>
</head>
<body>
    <div ng-app="">
        <input type="text" ng-model="data.message">
        <h1>{{data.message}}</h1>
        <div ng-controller="FirstCtrl">
            <input type="text" ng-model="data.message">
            <h1>{{ data.message}}</h1>
        </div>
            <div ng-controller="SecondCtrl">
            <input type="text" ng-model="data.message">
            <h1>{{ data.message}}</h1>
        </div>
    </div>

    <script type = "text/javascript" src="main.js"></script>
</body>
</html>

main.js包含:

function FirstCtrl($scope){
}
function SecondCtrl($scope){
}

3 个答案:

答案 0 :(得分:2)

&#13;
&#13;
var app = angular.module('myApp', []);
app.controller('FirstCtrl', function($scope) {
});
app.controller('SecondCtrl', function($scope) {
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="myApp">
  <input type="text" ng-model="message">
  <h1>{{message}}</h1>
  <div ng-controller="FirstCtrl">
      <input type="text" ng-model="message1">
      <h1>{{ message1}}</h1>
  </div>
      <div ng-controller="SecondCtrl">
      <input type="text" ng-model="message2">
      <h1>{{ message2}}</h1>
  </div>
</div>
&#13;
&#13;
&#13;

在模块中定义控制器。它将为不同的控制器创建不同的范围。

答案 1 :(得分:2)

范围属性必须位于控制器中,您必须先拥有应用程序并在应用程序中声明控制器。

    var app=angular.module("myApp",[]);
    app.controller("FirstCtrl",function($scope){
   });
 app.controller("SecondCtrl",function($scope){
   });

main.js:

$('#noti_Button').click(function (e) {
        e.preventDefault();
         $.ajax({
            url: '<?php echo site_url("profile/read_notif")?>',
            success:function(data)
            {
                alert(data);
            }

        });
    });

答案 2 :(得分:2)

我们可以这样做:

angular.module('myApp'[])
  .controller('FirstCtrl',FirstCtrl)
  .controller('SecondCtrl',SecondCtrl);

function FirstCtrl($scope){
}
function SecondCtrl($scope){
}

在index.html中 提供参考main.js并给出申请名称

<body ng-app="myApp">