2015-12-02 4 views
0

У меня есть переменная $scope в моем контроллере. Первоначально он будет загружать значение.

Мое требование состоит в том, что я хочу обновить значение переменной $scope при нажатии кнопки.

Пожалуйста, дайте мне знать, как я могу достичь этого. Я новичок в Angular.

var userName='UserName'; 

    tepTableModule.controller('tepTableCtrl',function($scope,Service,$filter) { 
     $scope.searchText=userName; 
     $scope.refreshData = function() { 

//when refreshData function called i want to update $scope.searchText value to new value. 
    $scope.tableData.data = $filter('filter')(tepJobData, $scope.searchText, undefined); 
     }; 
    } 
+0

вставить фрагмент кода HTML, а – Vineet

+2

делает '$ scope.searchText = новое_значение;' не работает? – Claies

+0

@ Claies да, это работает. – gihan

ответ

1

Вы делаете использование ng-click директивы.

Его директива, которая будет выполнять метод в вашем контроллере, когда пользователь нажимает на элемент. Это нас не ограничивается только методами, он будет оценивать угловое выражение, поэтому может быть использован для установки флагов на элементы, счетчики инкремента и т.д.

Так

<!--Execute Method--> 
<button ng-click="refreshData()">Refresh</button> 
<!--toggle Scope property isDisabled--> 
<button ng-click="isDisabled = !isDisabled">toggle disabled</button> 
<!--increment count by 1--> 
<button ng-click="count += 1">Add 1</button> 

С контроллером, как

$scope.refreshData = function() { 
    //epic refreshes 
} 
$scope.isDisabled = false; 
$scope.count = 0; 

документы: https://docs.angularjs.org/api/ng/directive/ngClick

2

Вы можете сделать функцию и вызвать его на нг нажмите:

на контроллере:

$scope.doSomething = function(){ 
//do something 
} 

На Вид:

<button ng-click="doSomething()">Click Me</button> 

Вот и все, удачи

+0

Это не совсем правильно. Вы должны определить свой метод '$ scope' или' this', если используете 'controller as'. Этот код в его нынешнем виде ничего не выполнит, так как ваш метод просто определяется как нормальная функция. – ste2425

+1

да, вы правы, и это то, что я имел в виду, так или иначе, спасибо, и я обновлю свой ответ. – user2120121

Смежные вопросы