1

いくつかの入力フィールドを追加する ng-repeat があり、これらの入力の値を生成されたフォームに送信したいというこの問題があります - ng-model では動作しませんが、内部の入力名で取得できますか?フォームタグ。

<li ng-repeat="group in tournament.groups">
    <form novalidate ng-submit="tournament.submit(group.team1, group.team2)">
        <span>
            {{ group.team1.name }}
            <input type="number" name="team1" placeholder="x">
        </span> - <span>
            <input type="number" name="team2" placeholder="x">
            {{ group.team2.name }}
        </span>

        <button type="submit">Save</button>
    </form>
</li>
4

3 に答える 3

2

ng-model&nameの属性を使用して入力をバインドする必要がformありますが、これが原因でng-submit発火していません。

その時点でname 属性を追加すると、 formangularname="team"はスコープ内に新しい変数を作成し、フォームの有効性と各フィールドの情報に関するすべてのフォーム関連情報を追加します。

マークアップ

<li ng-repeat="group in tournament.groups">
    <form name="team" novalidate ng-submit="tournament.submit(group.team1, group.team2)">
        <span>
            {{ group.team1.name }}
            <input type="number" name="team1" placeholder="x" ng-model="group.team1"/>
        </span> - <span>
            <input type="number" name="team2" placeholder="x" ng-model="group.team2"/>
            {{ group.team2.name }}
        </span>

        <button type="submit">Save</button>
    </form>
</li>
于 2015-06-27T13:11:28.823 に答える
0

ng-モデルを使用:

意見:

<li ng-repeat="group in tournament.groups">
    <form novalidate ng-submit="submit()">
        <span>
            {{ group.team1.name }}
            <input type="number" name="team1" placeholder="x" ng-model="group.team1.name">
        </span> - <span>
            <input type="number" name="team2" placeholder="x" ng-model="group.team2.name">
            {{ group.team2.name }}
        </span>

        <button type="submit">Save</button>
    </form>
</li>

コントローラーで:

$scope.submit = function(){
   console.log($scope.group.team1.name);
   console.log($scope.group.team2.name);
};

あなたはあなたの価値を得るでしょう。私のコードを一度試してみてください。

于 2015-06-27T13:14:39.277 に答える