Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.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 从表单输入创建对象以传递给控制器方法_Javascript_Html_Angularjs_Forms_Object - Fatal编程技术网

Javascript 从表单输入创建对象以传递给控制器方法

Javascript 从表单输入创建对象以传递给控制器方法,javascript,html,angularjs,forms,object,Javascript,Html,Angularjs,Forms,Object,我的js/controller中有一系列作业。数组中的每个作业对象都有属性,如jobName、company、city等。是否可以提交一个包含属性输入的表单,使其成为作业对象,然后将其推送到控制器中的作业数组中 例如,我有一个表单,输入软件开发者StackOverflow,NY。我是否可以将表单包装成具有正确属性的对象,然后将其传递到控制器中的作业数组中,以便在视图中查看它 这是我目前的表格代码 <form name="jobForm" ng-submit="list.ad

我的js/controller中有一系列作业。数组中的每个作业对象都有属性,如jobName、company、city等。是否可以提交一个包含属性输入的表单,使其成为作业对象,然后将其推送到控制器中的作业数组中

例如,我有一个表单,输入软件开发者StackOverflow,NY。我是否可以将表单包装成具有正确属性的对象,然后将其传递到控制器中的作业数组中,以便在视图中查看它

这是我目前的表格代码

        <form name="jobForm" ng-submit="list.addJob(jobForm)">
                <div class="form-group" id="test">
                    <label>Job Name:</label>
                    <input ng-model="jobName" type="text"/>
                </div>
                <div>
                    <label>Company:</label>
                    <input ng-model="companyDescription" type="text"/>

                    <div><button type="submit">Enter job entry</div>
                </div>

                <!-- this is where the live preview is. ng-model in the input binds it to these values -->
                <blockquote>
                <h4><u>Live Preview</u></h4>
                    <b>Job Name:</b> {{jobName}}
                    <div><b>Company:</b>{{companyDescription}}</div>
                </blockquote>
      </form>

职务名称:
公司:
输入工作条目
实时显示
作业名称:{{jobName}}
公司:{{companyDescription}

因此,我想使用jobName和companyDescription的输入作为对象的name和company属性来创建一个JOB对象。我该怎么做?还是我使用了错误的方法。谢谢你的帮助

对于初学者来说,有一条黄金法则,
ng model
应该始终作为对象属性开始。。。或者,由于继承,您可能会遇到许多子作用域问题

因此,通过不使用单独的作用域属性,并在开始的表单中为所有
ng模型
使用一个对象,您的整个问题都得到了简化

$scope.job={}
<input ng-model="job.jobName" type="text"/>
<input ng-model="job.companyDescription" type="text"/>
或者推到另一个阵列

  $scope.allJobs.push($scope.job);
  $scope.job = {} // reset

对于初学者来说,有一条黄金法则,
ng model
应该始终是一个对象属性来开始。。。或者,由于继承,您可能会遇到许多子作用域问题

因此,通过不使用单独的作用域属性,并在开始的表单中为所有
ng模型
使用一个对象,您的整个问题都得到了简化

$scope.job={}
<input ng-model="job.jobName" type="text"/>
<input ng-model="job.companyDescription" type="text"/>
或者推到另一个阵列

  $scope.allJobs.push($scope.job);
  $scope.job = {} // reset

谢谢你的快速回复。我有点困惑,因为我对javascript有点陌生。关于:$scope.job={}$scope.job={}是否创建对象?我来自java,因此隐式创建对象让我有点困惑,是的……请注意,我没有将控制器代码和视图代码分开,只是将它们混合在一起,因为这并不复杂<代码>$scope.job={}将进入课程控制器,因为它工作了很多。你说ng模型必须是对象属性是什么意思?我没有使用$scope,但使用Controller作为“实例”。如果使用
controllerAs
,则在这个答案中观看3分钟的视频不会对单个属性产生问题,因为这将强制对象已被使用。感谢快速响应。我有点困惑,因为我对javascript有点陌生。关于:$scope.job={}$scope.job={}是否创建对象?我来自java,因此隐式创建对象让我有点困惑,是的……请注意,我没有将控制器代码和视图代码分开,只是将它们混合在一起,因为这并不复杂<代码>$scope.job={}将进入课程控制器,因为它工作了很多。你说ng模型必须是对象属性是什么意思?我没有使用$scope,但使用Controller作为“实例”。如果使用
controllerAs
,则在这个答案中观看3分钟的视频不会对单个属性产生问题,因为这将强制已使用对象