从Form输入创建对象以传递给控制器​​方法

时间:2017-01-30 23:36:21

标签: javascript html angularjs forms object

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

例如,我有一个表单,我输入了软件开发人员,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的输入创建一个JOB对象作为对象的名称和公司属性。我怎样才能做到这一点?或者我使用了错误的方法。谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

对于初学者来说,有一条黄金法则a = [0] * 1000 a[9] = 1 sparse_a = pd.SparseArray(data=a, fill_value=0) 应该始终是一个对象属性......或者由于继承而可能会遇到很多子范围问题

因此,不使用单个范围属性并使用一个对象为表单中的所有ng-model开头

,从而简化了整个问题
ng-model

然后,当您需要将其发送到服务器时,它就像执行

一样简单
$scope.job={}
<input ng-model="job.jobName" type="text"/>
<input ng-model="job.companyDescription" type="text"/>

或推送到另一个阵列

$http.post(url, $scope.job).then(func....