2016-05-26 8 views
1

ich nicht in der Lage bin, den Wert einer Variablen erhalten in folgendem Fall:nicht mehr Wert einer Variablen in einem String erhalten: AngularJS

Onclick = "window.location.href =‚#/app/tmnl/{{message.pid}}‘"

druckt er nur dies '#/app/tmnl/{{message.pid}}' statt, um den Wert von message.pid

Einnahme
<div ng-repeat="message in userMessages track by $index"> 
      <a class="item item-avatar" href="#"> 
       <img src="https://graph.facebook.com/{{ message.a1id }}/picture?type=square"> 
       <h2>{{ message.mdata.a1n }}</h2> 
       <p>Back off, man. I'm a scientist.</p> 
       <button class="button button-small button-positive" href="#/app/tmnl/{{ message.pid }}" onclick="window.location.href = '#/app/tmnl/{{ message.pid }}' "> 
        View 
       </button> 
      </a> 
     </div> 

Kann jemand mir den Fehler erklären, den ich mache?

+1

Sie haben es ausdrückte als String: "#/app/tmnl/{{message.pid}}". Tun Sie etwas wie '{{#/app/tmnl/'+ message.pid}}' anstatt – devqon

+0

Können Sie Ihren Controller-Code hinzufügen? –

Antwort

1

Sie haben die {{ }} in eine Zeichenfolge gesetzt, so eckig wird das nicht auswerten. Tun Sie etwas, wie diese statt:

onclick="window.location.href = {{ '#/app/tmnl/' + message.pid }}" 
+0

danke für die Antwort, aber das funktioniert nicht :-( – abhinsit

0

Es funktionierte, wenn ich Onclick ersetzt ng Sie auf

ng-click="window.location.href = '#/app/tmnl/{{ message.pid }}' " 

Vielen Dank allen für andere Antworten als auch

+0

Sie sollten nicht window.location.href verwenden. Es wird die gesamte Seite neu laden. Wenn Sie einzelne Seite Anwendungsverhalten wollen, ist dies nicht der richtige Weg. –

+0

Was sollte ich dann tun? eine sref ändern? – abhinsit

+0

entweder ng-href oder sref wäre der richtige Weg. Versuchen Sie mit meiner Antwort auf diese Weise:

Verwandte Themen