Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用AngularJS从输入中获取新值_Javascript_Jquery_Angularjs_Angularjs Directive - Fatal编程技术网

Javascript 使用AngularJS从输入中获取新值

Javascript 使用AngularJS从输入中获取新值,javascript,jquery,angularjs,angularjs-directive,Javascript,Jquery,Angularjs,Angularjs Directive,我正在尝试将JQuery网站转换为AngularJS,但我无法理解这一点。 在我使用的JQuery中: $('.bet').change(function(e) { // Do someting }; 我试着用AngularJS做很多事情,但没有成功。 目前我的HTML中有这个,我的Angular文件中没有任何相关内容 index.php <input type="number" class="form-control" id="bet" name="bet" placehol

我正在尝试将JQuery网站转换为AngularJS,但我无法理解这一点。

在我使用的JQuery中:

$('.bet').change(function(e)  {
    // Do someting
};
我试着用AngularJS做很多事情,但没有成功。
目前我的HTML中有这个,我的Angular文件中没有任何相关内容

index.php

<input type="number" class="form-control" id="bet" name="bet" placeholder="Your bet" ng-model="bet" ng-change="bet( {{bet}} )"/>


如何在AngularJS中执行此操作?

来自文档:

当用户更改输入时计算给定表达式。表达式会立即求值,这与JavaScript onchange事件不同,后者仅在更改结束时触发(通常是在用户离开表单元素或按下返回键时)

因此,基本上需要将函数绑定到
ng change
属性,如下所示:

<input type="number" name="bet" placeholder="Your bet" ng-model="bet" ng-change="betChanged(bet)"/>

像这样,每次bet发生变化时都会调用betChanged,这与本机javascript
input
函数非常相似。

来自文档:

当用户更改输入时计算给定表达式。表达式会立即求值,这与JavaScript onchange事件不同,后者仅在更改结束时触发(通常是在用户离开表单元素或按下返回键时)

因此,基本上需要将函数绑定到
ng change
属性,如下所示:

<input type="number" name="bet" placeholder="Your bet" ng-model="bet" ng-change="betChanged(bet)"/>
这样,每次bet发生变化时都会调用betChanged,这与本机javascript
input
函数非常相似。

var myApp=angular.module('myApp',[]);
控制器('myCtrl',['$scope',函数($scope){
$scope.bet=“”;
$scope.onBetChanged=函数(){
警报($scope.bet);
};
}]);

var myApp=angular.module('myApp',[]);
控制器('myCtrl',['$scope',函数($scope){
$scope.bet=“”;
$scope.onBetChanged=函数(){
警报($scope.bet);
};
}]);

那$watch呢

<div ng-app="myApp" ng-controller="myCtrl">
        First Name:
        <input type="text" ng-model="firstName"><br>

        Full Name: {{firstName }}
    </div>
    <script>
        var app = angular.module('myApp', []);
        app.controller('myCtrl', function ($scope, $window) {
            $scope.$watch('firstName', function (newValue, oldValue) {
                console.log('oldValue=' + oldValue);
                console.log('newValue=' + newValue);
                //do something
                $window.alert("Event fired");
            });
        });
    </script>

名字:

全名:{{firstName} var-app=angular.module('myApp',[]); app.controller('myCtrl',函数($scope,$window){ $scope.$watch('firstName',函数(newValue,oldValue){ log('oldValue='+oldValue); log('newValue='+newValue); //做点什么 $window.alert(“事件触发”); }); });
那$watch呢

<div ng-app="myApp" ng-controller="myCtrl">
        First Name:
        <input type="text" ng-model="firstName"><br>

        Full Name: {{firstName }}
    </div>
    <script>
        var app = angular.module('myApp', []);
        app.controller('myCtrl', function ($scope, $window) {
            $scope.$watch('firstName', function (newValue, oldValue) {
                console.log('oldValue=' + oldValue);
                console.log('newValue=' + newValue);
                //do something
                $window.alert("Event fired");
            });
        });
    </script>

名字:

全名:{{firstName} var-app=angular.module('myApp',[]); app.controller('myCtrl',函数($scope,$window){ $scope.$watch('firstName',函数(newValue,oldValue){ log('oldValue='+oldValue); log('newValue='+newValue); //做点什么 $window.alert(“事件触发”); }); });
您希望获得什么样的结果?当用户键入某个内容时,您希望如何处理该值?您希望获得什么样的结果?当用户键入某个内容时,您希望如何处理该值?请注意,
ng change
的响应不同于jquery change注意,
ng change
的响应不同于jquery change“非常类似于本机javascript更改”不是真的。。。。更像是“输入”事件。它甚至说,在你的文档中,我很糟糕,我会编辑我的答案。感谢您指出这一点。绑定到
ng change
属性是正确的,但是将
bet
传递到
$scope.betchange
是不必要的,因为您可以通过
$scope.bet
访问相同的变量。是的,这是一个编码风格的问题:您是对的,不需要,但在我看来,更清楚地理解“与本机javascript更改非常相似”不是真的。。。。更像是“输入”事件。它甚至说,在你的文档中,我很糟糕,我会编辑我的答案。感谢您指出这一点。绑定到
ng change
属性是正确的,但是将
bet
传递到
$scope.betchange
是不必要的,因为您可以通过
$scope.bet
访问相同的变量。是的,这是一个编码风格的问题:您是对的,不需要,但在我看来,这是更清楚的理解