我有一个脚本询问我的服务器以获取各种值。在UI中 - 有一个JQuery滑块输入,用户可以在其中更改其中一个值 - 我想重新查询服务器/ PHP脚本。
这就是我所拥有的。
var app = angular.module("myServices", ['ui.bootstrap']);
app.controller("servicesCntrl", function($scope, $http) {
$http.get("http://myservice.com/scripts.php?dist="+28)
.success(function(response) {$scope.names = response.contractors;});
});
function updateVal() {
var scope = angular.element($("#batch")).scope();
scope.$apply(function($http){
$http.get("http://myservice.com/scripts.php?dist="+28)
.success(function(response) {$scope.names = response.contractors;});
})
}
控制器工作正常 - 并按预期抓取值。 updateVal脚本(在onChange事件上调用)被挂起,说$ http.get不是函数。
我错过了什么? :)提前致谢!
---修改
好的 - 我做了一些修改 - 但仍然没有。对不起 - 我对角度很新:)
这就是我现在所拥有的。滑块脚本 - 和角度。
<div class="ui-field-contain" data-controltype="slider">
<label for="slider1">
Adjust Distance
</label>
<input id="slider1" type="range" name="slider" value="5" min="0" max="50"
data-highlight="false" onchange="updateVals()">
</div>
和角度
app.controller("servicesCntrl", function($scope, $http) {
$scope.updateVals = function () {
console.log("Booyah");
}
$http.get("http://example.com/scripts.php?dist="+28)
.success(function(response) {$scope.names = response.contractors;});
});
---编辑3 - 感谢您的帮助:)
带有ng-model - 和ng-change 的滑块
<div class="ui-field-contain" data-controltype="slider">
<label for="slider1">
Adjust Distance
</label>
<input id="slider1" type="range" name="slider" value="5" min="0" max="50"
data-highlight="false" ng-model="myslider" ng-change="updateVals">
</div>
和角度
仍然缺少某些东西..
app.controller("servicesCntrl", function($scope, $http) {
$scope.updateVals = function () {
console.log("Booyah");
}
$http.get("http://example.com/scripts.php?dist="+28)
.success(function(response) {$scope.names = response.contractors;});
});
答案 0 :(得分:1)
您的updateVal()
功能位于您注入$http
服务的控制器之外,因此您无法访问它。将updateVal
功能移动到控制器中。