在我的指令中,我想添加一个' ng-click'属性为带有处理程序的图标,该处理程序接受如下ID:
icon.attr('ng-click', 'iconclick(' + node.id + ')');
但是我收到了一个错误:
Error: [$parse:syntax] http://errors.angularjs.org/1.4.3/$parse/syntax?p0=cca11656e285b0566ffde2&p1=is%20unexpected%2C%20expecting%20%5B)%5D&p2=13&p3=iconclick(55cca11656e285b0566ffde2)&p4=cca11656e285b0566ffde2)
at Error (native)
at http://localhost:3010/javascripts/vendor/angular.min.js:6:416
at Object.q.throwError (http://localhost:3010/javascripts/vendor/angular.min.js:209:32)
at Object.q.consume (http://localhost:3010/javascripts/vendor/angular.min.js:209:207)
at Object.q.primary (http://localhost:3010/javascripts/vendor/angular.min.js:206:181)
at Object.q.unary (http://localhost:3010/javascripts/vendor/angular.min.js:205:174)
at Object.q.multiplicative (http://localhost:3010/javascripts/vendor/angular.min.js:204:434)
at Object.q.additive (http://localhost:3010/javascripts/vendor/angular.min.js:204:261)
at Object.q.relational (http://localhost:3010/javascripts/vendor/angular.min.js:204:96)
at Object.q.equality (http://localhost:3010/javascripts/vendor/angular.min.js:203:425) <span ng-click="iconclick(55cca11656e285b0566ffde2)">
这里有什么问题?我也尝试过string.concat但结果相同。
答案 0 :(得分:1)
不应该添加更多的元指令,而应该沿着以下几行编写指令:
.directive('foo', function () {
return function (scope, element) {
element.on('click', scope.iconclick.bind(null, element[0].id));
};
})
换句话说,您可以直接访问范围对象及其附加功能,并可以直接触发它们。 ng-click
只是在模板中以声明方式执行此操作的助手,您无需使用它来调用范围上的函数。
答案 1 :(得分:0)
尝试this.Text = string.Empty;
this.ControlBox = false;
this.FormBorderStyle = FormBorderStyle.SizableToolWindow;
this.Left = this.Top = 0;
this.Height = Screen.GetWorkingArea(this).Height;
this.Width = Screen.GetWorkingArea(this).Width;
我假设您的id是一个字符串,您需要在函数的参数周围添加引号,以便将其识别为字符串。
答案 2 :(得分:0)