AngularJS -对同一个表单多次httpget
AngularJS - httpget multiple times for same form
我正在申请。我有一个表单,用户可以在其中输入产品。我通过angularjs服务获得了这个价格。我把它注射进去。RateInfoService .
所以如果我输入"Milk"它会在DOM中显示{{rate}} -> $2但是如果我输入chips,它将改变方向为{{rate}} -> $1.50
但是我想填的是牛奶,然后是薯条。所以我想让它显示在html页面
牛奶- - -> 2美元,芯片-> 1.50美元。
它会同时显示两个项目,用户可以继续输入产品并提交。(ng-click)。我可能能够在数组中做到这一点,但请注意,我有一个刷新率。我不确定ng-repeat是否可行,甚至不确定是否可行。
.controller("MainCtrl", function($scope, $http, $timeout, $ionicPlatform, $cordovaLocalNotification, $ionicPopup, RateInfoService, AlarmService, MonitorService) {
$scope.refreshRate = 5000;
$scope.refreshData = function() {
RateInfoService.getMarket($scope.alarmingMarket).success(function(data) {
$scope.rate = data.query.results.rate.Rate;
$scope.updateTime = data.query.results.rate.Time;
})
}
<label class="item item-input">
<span class="input-label">Product name</span>
<input type="text" min="3" ng-model="hard" name="text" autofocus required>
</label>
还有一些额外的信息
$scope.submit = function() {
$scope.alarmingMarket = $scope.hard
console.log($scope.monitors);
};
美元范围。alarmingMarket = $scope.hard
我使用这个,所以它只会在用户填写并按下提交后获得市场价格。
RateInfoService获取价格:http://pastebin.com/gHfhzMjR
我刚刚发现可以在url中转储多个对象。
https://query.private%20in%20("牛奶"、"芯片")格式= json&diagnostics = true&env =商店% 3 % 2 f % 2 fdatatables.org % 2 falltableswithkeys&callback =我怎样才能在angular中做到最好?I 'm new in angularjs(3周)
这是Json格式的视图(解释$作用域)。rate = data.query.results.rate.Rate;) "results": {
"rate": [
{
"id": "MILK",
"Name": "MILK",
"Rate": "1.1054",
"Date": "10/26/2015",
"Time": "9:37pm",
"Ask": "1.1056",
"Bid": "1.1052"
},
{
"id": "CHIPS",
"Name": "CHIPS",
"Rate": "1.5349",
"Date": "10/26/2015",
"Time": "9:37pm",
"Ask": "1.5352",
"Bid": "1.5346"
我希望这是足够的信息。***不知道为什么造型会出错。对不起,这一页很乱。Stack overflow给出了这篇文章的一个很好的预览,但是当我发布它的时候出现了一些问题。很多代码都没有变灰
我的解决方案
$scope.alarmingMarket = [];
$scope.submit = function() {
// $scope.alarmingMarket = $scope.hard
$scope.alarmingMarket.push($scope.hard);
console.log($scope.alarmingMarket);
};
将$作用域内的所有内容压入。alarmingMarket数组。
获取费率的服务
module.service('RateInfoService', function($http) {
return {
getMarket: function(alarmingMarket) {
var market = alarmingMarket
return $http.get('https://query.private%20in%20(%22'+ market + '%22)&format=json&diagnostics=true&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=')
}
}
})
market是数组。
和解析Json $scope.refreshData = function() {
RateInfoService.getMarket($scope.alarmingMarket).success(function(data) {
if($scope.alarmingMarket.length <= 1){ //if alarmingMarket[] has only 1 market
$scope.rate = [];
$scope.rate.marketid = data.query.results.rate.id;
$scope.rate.rate = data.query.results.rate.Rate;
$scope.rate.updateTime = data.query.results.rate.Time;
console.log($scope.rate);
}else{
angular.forEach(data.query.results.rate, function (value, key) {
$scope.rate = [];
$scope.rate.marketid = data.query.results.rate[key].id;
$scope.rate.rate = data.query.results.rate[key].Rate;
$scope.rate.updateTime = data.query.results.rate[key].Time;
console.log($scope.rate);
});
}
})
抱歉,我没有足够的代表来发表评论。如果这对我有帮助,请给我一个加分,这样我就可以得到更多的代表
从您发布的内容来看,似乎您正在尝试重复用户选择的项目,然后获得每个项目的每个新费率(不确定$scope。alarmingMarket是否为项目数组)。
如果您想获得用户所选项目的所有最新价格,您必须传递整个项目数组并返回一个数组,并让ng-repeat通过将值赋给$作用域来完成这项工作。alarmingMarket(如果这是你的商品清单)。
- 可以't让我的if语句处理js中的html表单输入
- 如何使用WCF服务和javascript表单post上传.doc文件
- Javascript生成的表单未提交
- 如何使用javascript或html下载PDF格式的填写表单
- HTML表单提交时未执行外部函数
- 如何将输入(type=text)从html表单传递到javascript函数
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- Ajax发布表单序列化,发布引号'
- 多级HTML表单
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 在验证和发送邮件后更改联系人表单的 html
- jQuery表单添加不适用于下拉列表
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- 如何从pdftron webviewer获取表单数据
- JS验证ajax返回的html中的表单数据
- Javascript更新孙窗口中的表单元素
- 解析javascript表单验证器
- 阻止表单元素提交
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- AngularJS -对同一个表单多次httpget