2015-02-11 19 views
5

voglio passare stringa JSON in ng clicPasso stringa JSON come un parametro in ng clic

qui è la stringa JSON:

{"id":0,"parentID":0,"SubMenuItems":[],"imageName":"Icon.png","moduleName":"No Menu"} 

HTML:

 <!DOCTYPE html> 
<html> 

    <head> 
    <script data-require="[email protected]*" data-semver="1.4.0-beta.4" src="https://code.angularjs.org/1.4.0-beta.4/angular.js"></script> 
    <link rel="stylesheet" href="style.css" /> 
    <script src="script.js"></script> 
    </head> 

    <body ng-app="app" ng-controller="appCtrl"> 
    <h1>Hello Plunker!</h1> 
    <button ng-click="go({ 
     "id": 0, 
     "parentID": 0, 
     "SubMenuItems": [], 
     "imageName": "Icon.png", 
     "moduleName": "No Menu" 
    })">GOOOOOOOOOOOOOO!!!!!!!!!!</button> 
    </body> 

</html> 

JS: // Il codice va qui

var app = angular.module('app', []); 
app.controller('appCtrl', ['$scope', 
    function($scope) { 

    $scope.go = function(parm) { 
     alert('hi'); 
    }; 
    } 
]); 

PLUNKER

risposta

4
Ci

sono due problemi. Il primo è che è necessario dichiarare la ngController direttiva ng-controller="appCtrl" su qualche elemento. Il secondo è che devi prendere gli attributi ngClick tra virgolette e quindi passare oggetto senza virgolette nella funzione go. Angolare capiranno che si sta passando e oggetto:

<body ng-app="app" ng-controller="appCtrl"> 
    <h1>Hello Plunker!</h1> 
    <button ng-click='go({ 
     "id": 0, 
     "parentID": 0, 
     "SubMenuItems": [], 
     "imageName": "Icon.png", 
     "moduleName": "No Menu" 
    })'>GOOOOOOOOOOOOOO!!!!!!!!!!</button> 
</body> 

Demo:http://plnkr.co/edit/8WuuhbCaZBom05ep576K?p=preview

Problemi correlati