如何将数据存储到在AngularJs对象如何将、数据存储、对象、AngularJs

2023-09-14 00:16:34 作者:笑敬过往

欲表单数据存储到一个阵列(它是一个对象数组),其在控制器声明。每个表单提交的时候,在对象的格式的表单数据应该得到追加称为数组费用英寸在code是 -

I want to store the form data into the an array(it is an array of objects) which is declared in controllers. Each time the form is submitted, the Form data in the format of an object should get appended in the array called expenses. The code is -

controller.js

angular.module('myApp.controllers', [])
 .controller('expenseForm', function($scope, $location) {
  $scope.expenses = [{
  exTitle: "",
  amount: "",
  typeOfShare: "",
  date: ""
 }];
 $scope.**submitExpense** = function (expenseInfo) {

 }
});

expense.html

<form class="clearBoth" ng-controller="expenseForm" ng-submit="submitExpense(expenseInfo)">
    <div class="expenseDesc" ng-model="expenseInfo">
        <div class="leftDesc">
            <div class="item">
                <label for="title">Expense Title</label>
                <input type="text" id="exTitle" name="title" ng-model="expenseInfo.exTitle"/>
            </div>
            <div class="item">
                <label for="amount">Total Amount Spend</label>
                <input type="text" id="totAmt" name="amount" ng-model="expenseInfo.amount"/>
            </div>
            <div class="item">
                <label for="shareType">Type of Share</label>
                <select name="shareType" ng-model="expenseInfo.typeOfShare">
                    <option value="equal">Equal</option>
                    <option value="unequal">Unequal</option>
                </select>
            </div>
        </div>
        <div class="rightDesc">
            <div class="item">
                <label for="date">Date</label>
                <input type="text" id="date" name="date" ng-model="expenseInfo.date"/>
            </div>
        </div>
        <!-- <div class="lowerSection">
            <div class="expenseTable clearBoth">
                <div class="tblHeader row">
                    <div class="sNo">SNo.</div>
                    <div class="email">Email</div>
                    <div class="name">Name</div>
                    <div class="share">Share</div>
                    <div class="paid">Paid</div>
                    <div class="owesTo">Owes To</div>
                    <div class="getsFrom">Gets From</div>
                    <div></div>
                </div>
                <div class="tblBody">
                    <div class="row">
                        <div class="sNo">1</div>
                        <div class="email">gnehapk@gmail.com</div>
                        <div class="name">Neha</div>
                        <div class="share">700</div>
                        <div class="paid">500</div>
                        <div class="owesTo">200 to Sneha</div>
                        <div class="getsFrom"></div>
                        <div></div>
                    </div>
                </div>
                <div class="tblFooter clearBoth">
                    <button id="addMember">Add Member</button>
                </div>
            </div>
        </div> -->

    </div> <!--end of expenseDesc-->
    <input type="submit" value="AddExpense" class="clearBoth" />
</form>

下面我声明在HTML页面中一个 expenseInfo 变量,其中将包含所有细节,如标题,日期等等。我应该在 submitExpense写什么功能,使该对象被在费用数组?

Here i am declaring a expenseInfo variable in the html page, which will contain all the details such as title, date etc. What should i write in submitExpense function so that this object gets appended in the expenses array?

推荐答案

只需使用命令:

 $scope.submitExpense = function (expenseInfo) {
    $scope.expenses.push(expenseInfo);
 }

看演示在 小提琴