通过循环问题的键来绑定模型

时间:2018-05-13 02:53:09

标签: javascript angularjs bind angularjs-ng-model

我试图将值绑定到ng-model=""指令,因为我在循环中显示元素。

我试过这个

<div class="form-group">
    <div data-ng-repeat="(key, n) in langInput.values">
        <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12 u-no-padding">
            <label class="sell__label" for="auction_name_account_{{n.selected }}">Główna nazwa Twojej aukcji ({{n.selected }}):</label>
            <div class="pst-relative">
                <input type="text"
                       id="auction_name_account_{{n.selected }}"
                       class="form-control"
                       name="auction_name_account"
                       data-ng-model="inputs.auction_name_account[key]"
                       data-ng-minlength="10"
                       data-ng-maxlength="60"
                       required />
                <span class="sell__input-text sell__input-text--big-input" data-ng-show="sellItem.auction_name_account.$error.required">Wymagane!</span>
                <span class="sell__input-text sell__input-text--big-input" data-ng-show="sellItem.auction_name_account.$error.minlength">Za krótkie!</span>
                <span class="sell__input-text sell__input-text--big-input" data-ng-show="sellItem.auction_name_account.$error.maxlength">Za długie!</span>
            </div>
        </div>
    </div>

我需要有独特的模型来首先创建工作验证(下面的跨度),然后收集数据并将其发送到rest api。

这个[key]以某种方式不打印作为对象的键,这是数字,但是正如我在控制台中看到的那样正常的字符串。

langInput的数据是

$scope.langInput = {
    values: [
        {
            id: 1,
            selected: "pl"
        },
        {
            id: 2,
            selected: "eng"
        }
    ],

我希望ng-model="inputs.auction_name_account[1]"其中1是绑定值或类似的东西。上面的对象数组也在变化。

1 个答案:

答案 0 :(得分:-1)

auction_name_account在生成时将成为对象。

这意味着所有属性访问器必须是一个字符串,并且不是一个字符串的属性将被拼接成一个。这就是为什么,虽然key是一个整数,但它在使用时会被转换为字符串。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_accessors#Property_names