0

選択ボックスと、その選択ボックスに依存する入力があります。関数を 6 回書くのではなく (この関係が 6 回発生するため)、入力 ng_model 参照を選択ボックスの ng-Change 関数に渡したいと思います。選択ボックスが変更されたときに関数が参照モデルを更新できるようにする

アップデート

これは私が現在持っているものです:

<select id="name_select" ng-model="name_model" ng-change="getAU_name(type_model,name_model)" ng-selected="name_model" ng-options="user.name as user.name for user in AU_model[type_model]"  required></select>
<input id="description_input" ng-model="description_model" disabled></input>


$scope.getAU_name = function (type, name) {
    $.each($scope.AU_model[type], function (index, value) {

        if (value.name == name || value.description === name) {
            console.log("name= " + value.name + " description= " + value.description);
            $scope.description_model= value.name;
        }

    });

しかし、私は同じことをする6つの別々のリレーションシップを持っているので、設定するためだけにgetAU_nameの6つのバージョンを持つことを避けようとしています.$scope.description_model

基本的に、同じ機能で設定したい6つのモデル、、...などがありますdescription_modeldescription_model_2

4

2 に答える 2

2

私はロジックを見て、あなたは間違いなくこのように多くを単純化することができます. type_model の代わりに関数を渡すだけuserでよく、コントローラーにループはまったく必要ありません。

description6 つのモデルすべてを保持するオブジェクトを作成することをお勧めします。

<select id="name_select" ng-model="name_model" ng-change="getAU_name(user, name_model, 'model1')" ng-selected="name_model" ng-options="user.name as user.name for user in AU_model[type_model]"  required></select>
<input id="description_input" ng-model="description.model1" disabled></input>

$scope.getAU_name = function (user, name, model_name) {
    if (user.name == name || user.description === name) {
        description[model_name] = user.name;
    }
};
于 2013-08-27T15:41:53.860 に答える