Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.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 - Fatal编程技术网

Javascript 单击在AngularJS模块中触发两次

Javascript 单击在AngularJS模块中触发两次,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我有以下html: <div ng-repeat="email in user.emails" class="form-group"> <label for="inputEmail_{{$index+1}}" class="col-lg-2 control-label">Email {{$index+1}}</label> <div class="col-lg-8 col-xs-11">

我有以下html:

<div ng-repeat="email in user.emails" class="form-group">
            <label for="inputEmail_{{$index+1}}" class="col-lg-2 control-label">Email {{$index+1}}</label>
            <div class="col-lg-8 col-xs-11">
                <input type="email" class="form-control" id="inputEmail_{{$index+1}}" name="inputEmail_{{$index+1}}" placeholder="Email" required>
            </div>
            <div ng-if="$index == 0" class="col-lg-1 col-xs-1">
                <button type="button" class="btn btn-info addEmailBtn" ng-click="addEmailInput()">
                    <i class="fa fa-plus"></i>
                </button>
            </div>
            <div ng-if="$index != 0" class="col-lg-1 col-xs-1">
                <button type="button" class="btn btn-danger" ng-click="removeEmailInput($index)">
                    <i class="fa fa-trash"></i>
                </button>
            </div>
        </div>
由于某些原因,有时当我单击
.addEmailBtn
时,click事件被触发两次,因此我得到两个新元素,而不是一个

编辑您可以在此处重现问题:

您是否包括jquery mobile?也许你正在试验幻影点击bug@MarcosPérezGude不,我没有jquery mobile。你能重新编程plnkr或其他东西吗?所以问题似乎出在
推送中。请尝试以下操作:
scope.user.emails={emailValue:”“}我觉得这个代码很好
module.controller('NewContactCtrl',
function EditProfileController($scope) {

    $scope.user = {
        emails: [
            { emailValue: "" }
        ]
    };


    $scope.addEmailInput = function () {
        $scope.user.emails.push({ emailValue: "" });
    };

    $scope.removeEmailInput = function (index) {
        $scope.user.emails.splice(index, 1);
    };

});