2012-09-28 16 views
68

Bir dize veya sayıyı kabul edecek ancak bir ng-model değişkeni kabul etmeyecek basit bir silme düğmem var (bu doğru bir terminoloji olup olmadığından emin değil). TıkladığımdaBir bağlı değişkeni ng tıklama işlevine nasıl geçirebilirsiniz?

<button class="btn btn-danger" ng-click="delete('503a9742d6df30dd77000001')">delete</button> 

Ancak hiçbir şey olmaz: üretir

<button class="btn btn-danger" ng-click="delete('{{submission.id}}')">delete</button> 

. Eğer bir değişkeni kodlarsa, o zaman iyi çalışır. Ben sadece şeyler "Eğik" yol yapmıyorum varsayalım, ama ben bu şekilde

İşte benim denetleyicisi kod :) ne olduğundan emin değilim: Kullanılacak gerekmez

$scope.delete = function (id) { 
    alert('delete ' + id); 
} 

cevap

131

ng-click kıvırcık dirsekleri ({{}}), bu deneyin:

<button class="btn btn-danger" ng-click="delete(submission.id)">delete</button> 
+2

nasıl Sonra bir fonksiyonu sayesinde submission.id geçiren ki? Anladığım kadarıyla işlev (submission.id) {}, bir işlev –

+1

döneminden farklı olamayacağı için denetleyicimde çalışmayacaktı. * Açıklama *: Köşeli parantezleri niteliklere geçirirken küme parantezleri kullanmanıza gerek yoktur, ancak Bunlara hala dahili HTML işaretlemesinde ihtiyacınız olacak. Örnek: Rick

+0

Bunu yaparken parantezlerin değişken değer yerine neden işlev görmeye başladığını merak ettim: ' 'Cevabınız gerçekten yardımcı oldu:' ' Komik olan, yanlış yol, geliştirici araçları penceresinde düzgün bir şekilde işlenmiş gibi görünüyordu. – jaybro

1

ngClick yönergesi, ifade bağlanır. {{ }}'a gerek olmadan doğrudan Açısal kodu (ngIf, ngChange, vb.) Yürütür.

angular.module('app', []).controller('MyCtrl', function($scope) { 
 
    $scope.submission = { id: 100 }; 
 

 
    $scope.delete = function(id) { 
 
     alert(id + " deleted!"); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="app" ng-controller="MyCtrl"> 
 
    <button ng-click="delete(submission.id)">Delete</button> 
 
</div>

İlgili konular