У меня есть сценарий, который запрашивает мой сервер для получения различных значений. В пользовательском интерфейсе - есть ползунок 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 - Спасибо за помощь :)
слайдера с нг-модели - и нг-изменение
<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;});
});
Почему обновление VAL вне контроллера? Он не имеет доступа к $ http – Irshu