Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays AngularJS从数组填充文本框_Arrays_Angularjs_Forms_Binding_Textbox - Fatal编程技术网

Arrays AngularJS从数组填充文本框

Arrays AngularJS从数组填充文本框,arrays,angularjs,forms,binding,textbox,Arrays,Angularjs,Forms,Binding,Textbox,我正面临着AngularJS的问题。我已经做了一个应用程序,用户可以 从下拉列表中选择一个值。如果用户按下“添加”按钮,则会创建一个数组来保存其所有选择。我想用所有这些选择填充一个文本框。我尝试过ng repeat,但它会用每个数组值创建多个文本框。这就是我到目前为止所做的: 控制器 $scope.multiCompare= []; // Create the function to push the data into the "multiCompare" array $scope.newC

我正面临着AngularJS的问题。我已经做了一个应用程序,用户可以 从下拉列表中选择一个值。如果用户按下“添加”按钮,则会创建一个数组来保存其所有选择。我想用所有这些选择填充一个文本框。我尝试过ng repeat,但它会用每个数组值创建多个文本框。这就是我到目前为止所做的:

控制器

$scope.multiCompare= [];

// Create the function to push the data into the "multiCompare" array
$scope.newCompare = function () {

    $scope.multiCompare.push($scope.compareDate);


    $scope.multiComparedate = '';



};
HTML

<div class="form-group">
                <label for="installation_year" class="col-sm-2 control-label">Period</label>
                <div class="col-sm-4">
                    <select class="form-control" ng-model="compareDate" ng-options="res for res in compareDates " ng-disabled="disableFormInput()" ></select>
                </div>
            </div>
            <div class="form-group">
                <div class="col-sm-offset-2 col-sm-10">
                    <button type="submit" class="btn btn-default" ng-click="newCompare()">Add</button>
                     </div>
            </div>
            <div class="form-group">
                <label for="from_date" class="col-sm-2 control-label">Compare</label>
                <div class="col-sm-4">
                    <div ng-repeat="num in multiCompare" track by $index>
                        <input class="form-control" type="text" ng-model="$parent.multiCompare[$index]">
                        <div> {{num}}</div>
                    </div>
                </div>

时期
添加
比较
{{num}}

第一张图显示了我在添加2013年和2014年时得到的结果,第二张图显示了我希望它返回的结果

有人能帮我渡过难关吗?
提前感谢..

为呈现比较字段输入,您可以使用指令。这将把逗号(,)分隔的输出直接绑定到输入元素

改变

<label for="from_date" class="col-sm-2 control-label">Compare</label>
<div class="col-sm-4">
    <div ng-repeat="num in multiCompare" track by $index>
        <input class="form-control" type="text" ng-model="$parent.multiCompare[$index]">
        <div> {{num}}</div>
    </div>
</div>
比较 {{num}}

<label for="from_date" class="col-sm-2 control-label">Compare</label>
<div class="col-sm-4">
    <input class="form-control" type="text" ng-model="multiCompare" ng-list/>
</div>
比较
这可能会帮助你,谢谢。

我已经做到了我想要的。我将html代码更改为:

<div class="form-group">
                <label for="from_date" class="col-sm-2 control-label">Compare</label>
                <div class="col-sm-4">
                    <div data-ng-repeat="num in multiCompare" track by $index>
                        <input class="form-control" type="text" ng-model="multiCompare" ng-list {{num}} ng-show="$last" />
                    </div>
                </div>
            </div>

比较
成功了!
你的ng列表建议真的很有帮助!多谢各位

您能提供compareDates&multiCompare数组吗?每次用户单击add按钮时,multiCompare数组都会填充选定的下拉周期值,我希望此数组与文本框绑定,以逗号分隔的输出。不幸的是,上面的代码在我的情况下不起作用……数组包含什么?你能给我一些样品吗。。我在想它包含
[20132014]
@Olgapoliti如果我的答案有帮助,那么就把它标记为正确的…我会编辑我的答案..对你合适吗?我给了它a+1,因为它有帮助,但不是解决我问题的答案。因为我很难找到这个问题的答案,我不想让你编辑你的答案。此外,a+1总是一种奖励…@Olgapoliti我要求你给我样本数组,因为我不知道
多compare
,我在等你的回复。但你没有给我。你的问题也不太清楚。没有正确地解释问题。好的,谢谢你的支持。:)