Angularjs - 点击不点火

时间:2014-08-06 04:38:00

标签: javascript angularjs visual-studio

$ scope.testing正在作为按钮ID正确添加,但单击该按钮不会触发警报。

参见示例 - http://plnkr.co/edit/RtidzgiUI7ZAMOTu3XHy?p=preview

CONTROLLER

var app = angular.module('StockCategory', []);

app.controller('stockCategoryController', function($scope) {
  $scope.testing = 'World';

  $scope.saveCategory = function() {

    alert('hello');
  }
});

HTML

<div class="stock-categories" ng-app="StockCategory" ng-controller="stockCategoryController">
    <button class="btn save-cat" id="{{testing}}" ng-­click="saveCategory();">Save</button>
  </div>

2 个答案:

答案 0 :(得分:14)

问题在于,您的-指令中的plunker中的按钮元素有一个额外的ng-click。你无法在你的plunker中看到它,尝试在无格式文本编辑器(如记事本)中复制和粘贴它。您将看到如下所示的额外-

<button class="btn save-cat" id="{{testing}}" ng--­click="doClick()">Save</button>

可能的原因可能是因为将代码从html页面复制并粘贴到另一个页面或从不同的文档格式粘贴到html格式。

要解决此问题,只需创建具有相同内容的另一个按钮元素,不要复制并粘贴上面的按钮元素。

在我的 DEMO 中,您会看到两个带有相同标记的按钮,第一个按钮不起作用,而另一个按钮完美无缺。

答案 1 :(得分:1)

似乎在this plunker上正常工作。

因为你正在编辑你发布的那个,所以我必须制作一个新的。它看起来不像你问题中的代码。

你的plnkr

ng-­click="saveCategory"

这不起作用,因为ng-click需要表达式,而不是引用。你在问题中说得对。

代码,因为它在你的问题中在这里工作正常。