【问题标题】:AngularJS ng-click event not executing from an anchor tag within a tableAngularJS ng-click 事件未从表中的锚标记执行
【发布时间】:2026-01-13 09:55:01
【问题描述】:

我有这张桌子:

<table class="table table-striped table-bordered table-responsive" ng-show="viewBusinessUnits">
    <thead>
       <tr>
          <th>Business Unit</th>
          <th>Sales</th>
          <th>Percentage Last Year</th>
          <th>WTD Percentage Last Year</th>
       </tr>
    </thead>
    <tbody>
       <tr ng-repeat="row in tableData">
          <td><a ng-click="toggleTable('{{row.name}}')">{{row.name}}</a></td><!---->
          <td>{{row.sales}}</td>
          <td>{{row.perc_ly}}</td>
          <td>{{row.wtd_perc_ly}}</td>
       </tr>
    </tbody>
<table>


我的问题是 toggleTable('{{row.name}}') 永远不会被执行。
当我将href="#" 属性添加到&lt;a&gt; 标记时,只有锚点起作用。
当我尝试给它一个唯一的 ng 模型 ng-model='{{row.name}}' 时,所有列都将字符串 {{row.sales}} {{row.perc_ly}} {{row.wtd_perc_ly}} 显示为文字而不是相应的值。

如果我在表格之外创建一个硬编码链接&lt;a href="#" ng-click="toggleTable('view')"&gt;something&lt;/a&gt;,它就可以工作。

我在同一页面中使用引导和浮动图表。这可能是我遇到这个问题的原因吗?

在我使用的所有其他角度页面中,它都有效,但不是这个。

【问题讨论】:

  • 试试ng-click="toggleTable(row.name)"
  • 甜蜜!快点把它作为答案发布,谢谢!

标签: jquery angularjs twitter-bootstrap flot


【解决方案1】:

ngClick 在点击时计算给定的表达式。你不需要在这里插值。

只需去掉花括号:

ng-click="toggleTable(row.name)"

【讨论】: