6

Sto provando a collegare il valore da un campo di input al parametro del mio metodo su ng-click. Ecco quello che ho ottenuto, ma non funziona, e io non sono troppo sicuro se è possibile farlo in questo modo ?:Associare il valore di input al pulsante ng-click (invia valore come parametro)

<input type="text" name="name" value="{{post.PostId}}" /> 
<button ng-click="getById(post.PostId)"></button> 
<h1>{{post.Title}}</h1> 


$scope.getById = function (id) { 
     console.log(id); 
     return $http.get('/api/Post/' + id); 
    } 
+0

quale problema hai trovato ora, dopo la modifica del codice a @ JDTLH9 suggerimento? –

+0

Beh, il problema è che il titolo del post non appare affatto nel tag 'h1' – btmach

risposta

19

Si dovrebbe usare ng-model direttiva per il vostro elemento di input.

Markup

<input type="text" name="name" ng-model="post.PostId" /> 
<button ng-click="getById(post.PostId)"></button> 
<h1>{{post.Title}}</h1> 

Questo si prenderà cura del modello 2-way binding per la vostra proprietà post.PostId. La tua direttiva ng-click prenderà il valore corretto inserito nell'elemento di input.

Vedi il mio lavoro Plunk :)

+0

Beh, non sembra funzionare, ma ho aggiunto più codice al post originale in modo che tu possa vedere getById:) – btmach

+0

@btmach dovrebbe funzionare come desiderato. Si prega di vedere il link al Plunk nella mia risposta modificata. – JDTLH9

+1

Risolto, grazie :) – btmach