当用户选择一个选项时,如何在AngularJS中向HTML中添加数组内容
How to add array contents to the HTML in AngularJS when the user selects an option
我一直在努力完成AngularJS中的编程任务。我已经把基础知识整理好了,但我似乎不理解某个特定的部分,而且我不知道该使用哪个Angular命令/指令。
我应该将用户选择的鱼(包含在数组中)添加到HTML中(从表单中),并在他们选择更多鱼时继续添加更多鱼,并在他们需要时删除它们(我应该使用ng-model吗?)。
到目前为止,我有以下内容:
HTML <!DOCTYPE html>
<html ng-app = "fishSaver">
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />
<script src="https://code.angularjs.org/1.5.8/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script type="text/javascript" src="app.js"></script>
</head>
<body ng-controller= "fishController as fishC">
<!--- Choose fish from dropdown--->
<div ng-controller = "fishController as fishCtrl">
<form >
Choose a fish
<select ng-model= "theFishes">
<option value="Gold" ng-model = "gold">Gold Fish</option>
<option value="Angel" ng-model = "angel">Angel Fish</option>
<option value="Babel" ng-model = "babel">Babel fish</option>
</select><br>
</form>
<br>
<div class = "col-sm-6 col-md-3" ng-model = "fishProfiles">
{{fishCtrl.fishProfiles}}
</div>
</div>
</div>
</body>
</html>
AngularJS:
(function(){
var app = angular. module('fishSaver', [])
// fish controller
app.controller('fishController', function(){
var vm = this;
// define a new profile
vm.fishProfiles = fishArray;
});
// JSON object
var fishArray = [
{name: 'Gold Fish',
weight: 0.1,
images:'images/gold.jpg'},
{name: 'Angel Fish',
weight: 0.2,
images:'images/angel.jpg'},
{name: 'Babel Fish',
weight: 0.3,
images:'images/babel.jpg'}
]
})();
谢谢
试试这个:
html:<body ng-app = "fishSaver" ng-controller= "fishController as fishC">
<!--- Choose fish from dropdown--->
<div ng-controller = "fishController as fishCtrl">
<form >
Choose a fish
<select ng-model= "theFishes" ng-change="fishCtrl.selectedFish(theFishes)">
<option value="Gold" >Gold Fish</option>
<option value="Angel">Angel Fish</option>
<option value="Babel">Babel fish</option>
</select><br>
</form>
<br>
<div class = "col-sm-6 col-md-3" ng-model = "fishProfiles">
{{fishCtrl.fishProfiles}}
</div>
<hr>
<h3>my list</h3>
{{fishCtrl.fishList}}
</div>
</div>
javascript: (function(){
var app = angular. module('fishSaver', [])
// fish controller
app.controller('fishController', function(){
var vm = this;
// define a new profile
vm.fishProfiles = fishArray;
vm.fishList = [];
vm.selectedFish = function(fish){
vm.fishList.push({'name':fish})
}
});
// JSON object
var fishArray = [
{name: 'Gold Fish',
weight: 0.1,
images:'images/gold.jpg'},
{name: 'Angel Fish',
weight: 0.2,
images:'images/angel.jpg'},
{name: 'Babel Fish',
weight: 0.3,
images:'images/babel.jpg'}
]
})();
我不是100%确定你的问题是如何在数组中显示鱼,并提供一种机制来删除它们?
相关文章:
- EJS中的Angularjs-Ui路由器参数
- 在play2框架中向json对象添加下拉列表项
- 显示&作为&在jsp中使用angularjs而不使用ng-bind-html
- 向AngularJS目录添加JS变量
- 使用Knockout JS从下拉框中向observalearray添加项
- 在highcharts.js中向点弹出窗口动态添加文本
- 在AngularJS中向控制器发送多个随机单选按钮值
- 在 angularJS 中向控制器注入服务失败
- 在页面加载时,根据 json 对象的值向 Angularjs ng-repeat 中的元素添加一个类
- 向angularjs中的重复元素添加ng点击处理程序
- 我想从android向控制器中的AngularJS方法传递值
- 向控制器中注入Angularjs服务
- 如何在Angularjs中向父记录添加子行
- 当用户选择一个选项时,如何在AngularJS中向HTML中添加数组内容
- 在AngularJS中向承诺数组中添加一个项
- AngularJS -在ng-repeat中向单个项附加HTML
- 在AngularJs中向多个元素中添加class
- 在AngularJS中向另一个服务注入服务
- 如何在Angularjs中向客户端隐藏值
- 如何在angularjs中向localstore添加数组