1

Ich erstelle dynamische Schaltfläche und $ kompilieren, um ng-click-Ereignis zu binden. Ich füge zwei Parameter hinzu. Problem ist, dass wenn der Parameter eine Zeichenfolge ist und Leerzeichen dazwischen hat, der Parameter sich teilt.

Hier ist mein Javascript-Code:

var name 'Demo 1'; 
var str= 'hello' 
var btnhtml = '<button type="button" class="btn btn-primary btn-xs" ng-click=getShops("' + str + '","' + name + '")>View Detail</button>'; 
temp = $compile(btnhtml)($scope); 

generiert HTML-Code sieht wie folgt aus:

<button type="button" class="btn btn-primary btn-xs ng-scope" ng-click="getData("hello","Demo" 1")>View Detail</button> 

Wo meine gewünschte Ausgabe ist:

<button type="button" class="btn btn-primary btn-xs ng-scope" ng-click="getData("hello","Demo1")>View Detail</button> 

Wie ich dieses Problem beheben kann. Vielen Dank.

Antwort

1

Sie nicht html entkommen ordnungsgemäß

btnhtml = '<button type="button" class="btn btn-primary btn-xs" ng-click="getShops(\'' + str + '\',\'' + name + '\')">View Detail</button>'; 

entfernte ich das doppelte Anführungszeichen Symbol " vor der Flucht.

+0

@Bhuneshwer hast du eine Chance bekommen, meine Antwort zu sehen? –

+0

Ja, es hat mir geholfen, mein Problem zu lösen. Ich entfernte "Symbol vor Escape-Zeichen. – Bhuneshwer

+0

@Bhuneshwer Froh, das zu wissen. Danke;) –

Verwandte Themen