使用 ng 模型

Using the ng-model

我正在使用 angularjs、网络 api 和实体框架开发保存功能。当用户单击添加新按钮时,我将一些字段初始化为默认值。我有一个 itemDetail 对象和一个 itemPrice 对象。两者都有一个 itemNo 字段。在表单上,​​itemDetail 由 ng-model 更新。我怎样才能在 newItemPrice() 中获得该值?

HTML:

<input type="text" name="itemNo" class="form-control" id="itemNumber" ng-model="vm.item.itemDetail.itemNo" />

控制器

    function newItemDetail() {
    return {
        id: 0,
        itemId: 0,
        itemNo:'',
        onHandQty: 0,
        storeListPrice: 5000.00,
        inventoried: false,
    }
}

function newItemPrice() {
    return {
        id: 0,
        itemId: 0,
        itemNo: '',
        country: 'USA',
        region: 1,
        discountPercent: 10,
        erpDeleted: false,
        deleteRemote: false,
    }
}

看这里: How to bind 2 models to one input field in Angular?

否则我建议您将数据结构从 2 个具有 ID 的对象更改为 1 个具有 2 个属性的对象。

function Item() {
return {
    id: 0,
    itemId: 0,
    itemNo: '',
    price: { 
        onHandQty: 0,
        storeListPrice: 5000.00,
        inventoried: false
    },
    detail:{
        country: 'USA',
        region: 1,
        discountPercent: 10,
        erpDeleted: false,
        deleteRemote: false}
    }
}

您似乎在对象的最后 key/value 对处添加了一个逗号 我建议您将其删除 我有时会遇到一些疯狂的问题

您可以使用 ng-change 指令:

ng-change="vm.item.itemPrice.itemNo = vm.item.itemDetail.itemNo"