Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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 ng表单提交了一个空对象,但应修改该对象_Javascript_Forms_Angularjs - Fatal编程技术网

Javascript ng表单提交了一个空对象,但应修改该对象

Javascript ng表单提交了一个空对象,但应修改该对象,javascript,forms,angularjs,Javascript,Forms,Angularjs,已更新 控制器 chitchatApp.controller('chitchatCtrl', ['$scope', function($scope) { $scope.users = [ {'username': 'John'}, {'username': 'Dan'}, {'username': 'Judy'}, {'username': 'Michael'}, {'username': 'Rebecca'}, {'username

已更新

控制器

chitchatApp.controller('chitchatCtrl', ['$scope', function($scope) {

    $scope.users = [

    {'username': 'John'},
    {'username': 'Dan'},
    {'username': 'Judy'}, 
    {'username': 'Michael'},
    {'username': 'Rebecca'},
    {'username': 'Macy'},
    {'username': 'Ross'}
    ];

    name = {'username': ''};
  //name = {}; 


    $scope.createuser = function createuser() { 
        $scope.users.push(name);
    };
}]); 
name = {}; 
html

我也试着把它改成这个

name = {'username': ''}; 
我在$scope上有这样一个方法

$scope.createuser = function createuser() { 
        $scope.users.push(name);
    };
$scope.users是一个包含对象的数组,每个对象都具有相同的“username”属性

我使用ng repeat在users中循环用户

当我单击提交时,有一个新的li,但对象中的内容消失了。我没有建立数据库。它是纯javascript和角度js

表单中的模型对象是否未被修改 或 我是否成功了,但它立即消失了,我注意到当我将一个对象推入数组(显示为ng repeat)然后刷新时,它消失了,因为它没有持久化?我没有设置数据库?

试试这个(SAN本地存储):

HTML:

以以下身份登录:
Fiddle:

尝试一下(SAN本地存储):

HTML:

以以下身份登录:
Fiddle:

尝试一下(SAN本地存储):

HTML:

以以下身份登录:
Fiddle:

尝试一下(SAN本地存储):

HTML:

以以下身份登录:

Fiddle:

ng model指令绑定到$scope的属性。因此,您需要使用以下命令使名称变量成为该范围的一部分:

$scope.name = {'username': ''}; 

$scope.createuser = function createuser() { 
    var safeCopy = angular.copy($scope.name);
    $scope.users.push(safeCopy);
};

ng model指令绑定到$scope的属性。因此,您需要使用以下命令使名称变量成为该范围的一部分:

$scope.name = {'username': ''}; 

$scope.createuser = function createuser() { 
    var safeCopy = angular.copy($scope.name);
    $scope.users.push(safeCopy);
};

ng model指令绑定到$scope的属性。因此,您需要使用以下命令使名称变量成为该范围的一部分:

$scope.name = {'username': ''}; 

$scope.createuser = function createuser() { 
    var safeCopy = angular.copy($scope.name);
    $scope.users.push(safeCopy);
};

ng model指令绑定到$scope的属性。因此,您需要使用以下命令使名称变量成为该范围的一部分:

$scope.name = {'username': ''}; 

$scope.createuser = function createuser() { 
    var safeCopy = angular.copy($scope.name);
    $scope.users.push(safeCopy);
};

请显示控制器的完整相关部分和HTML代码。请显示控制器的完整相关部分和HTML代码。请显示控制器的完整相关部分和HTML代码。请显示控制器的完整相关部分和HTML代码。如果不存在操作属性。如果不存在操作属性,则ng-submit取消表单的默认提交行为。如果不存在操作属性,则ng-submit取消表单的默认提交行为。如果不存在操作属性,则ng-submit取消表单的默认提交行为。嗯?你什么意思$scope.users.push(angular.copy($scope.name));这是必要的。否则,绑定将保持活动状态,从而修改新插入的项。@qwertynl很好。错过了关于ng model隐式定义$scope上的属性的部分(如果尚未定义)。@Bart因此最终您的答案并没有真正回答任何问题。我很抱歉:-(奇怪的是OPs代码没有完全工作。我的回答做了一些小的修改,使其能够按预期工作。我更新了代码,检查@Bart Eh是否有空输入?你是什么意思?$scope.users.push(angular.copy($scope.name));是必需的。否则绑定将保持活动状态,导致修改新插入的项。@qwertynl很好。错过了关于ng模型隐式定义$scope上的属性的部分(如果尚未定义)。@Bart因此,最终您的答案并不能真正回答任何问题。很抱歉:-(奇怪的是,OPs代码没有完全工作。我的回答做了一些小的修改,使其能够按预期工作。我更新了代码,以检查@Bart Eh是否有空输入?你是什么意思?$scope.users.push(angular.copy($scope.name));是必需的。否则绑定将保持活动状态,导致修改新插入的项。@qwertynl很好。错过了关于ng模型隐式定义$scope上的属性的部分(如果尚未定义)。@Bart因此,最终您的答案并不能真正回答任何问题。很抱歉:-(奇怪的是,OPs代码没有完全工作。我的回答做了一些小的修改,使其能够按预期工作。我更新了代码,以检查@Bart Eh是否有空输入?你是什么意思?$scope.users.push(angular.copy($scope.name));是必需的。否则绑定将保持活动状态,导致修改新插入的项。@qwertynl很好。错过了关于ng模型隐式定义$scope上的属性的部分(如果尚未定义)。@Bart因此,最终您的答案并不能真正回答任何问题。很抱歉:-(奇怪的是,OPs代码没有完全工作。我的答案做了一些小的修改,使其能够按预期工作。我更新了代码,以检查@Bart的输入是否为空
$scope.name = {'username': ''}; 

$scope.createuser = function createuser() { 
    var safeCopy = angular.copy($scope.name);
    $scope.users.push(safeCopy);
};