【发布时间】:2016-03-16 17:12:45
【问题描述】:
我正在努力弄清楚如何根据布尔变量的值禁用 ng-click 事件。
我有一个表单,用户必须单击 (+) 符号/链接才能添加新记录,当用户这样做时,会触发一个小函数,并将布尔值设置为 false。
代码:
vm.addNewRecord = function (formClass) {
vm.hasID = false;
};
表单有一个图标/链接,允许用户将有关参与者的信息保存到记录中。
代码:
<div class="icon">
<a ng-click="addParticipants(data)">
<i class="fa fa-fw fa-plus"></i>
</a>
</div>
这个问题是这个信息依赖于一个记录 id,但这个 id 还不存在。
我需要能够禁用 ng-click 的:addParticipants(data) 是 hasId = false 的值,同时(不知何故)允许用户点击它在以下行中显示一条消息:“请在添加参与者之前保存此记录。”
到目前为止我已经尝试过,但没有成功:
<div class="datagrid-icon">
<a ng-click="datagrid.add(datagrid)" ng-disabled="!hasID">
<i class="fa fa-fw fa-plus"></i>
</a>
</div>
还有:
<div class="datagrid-icon">
<a ng-click="datagrid.add(datagrid)" ng-class="{'disabled': !hasID}">>
<i class="fa fa-fw fa-plus"></i>
</a>
</div>
我检查了 hasID 的值,它是假的,但我仍然可以单击 addParticipants 的 (+) 号。而且,我不确定如果我设法禁用点击,我将显示消息,指示用户首先保存主记录,然后可以添加参与者。
如果有人能提供一些帮助来解决这个问题,那将不胜感激。
谢谢。
【问题讨论】:
-
锚标签不支持ng-disabled
标签: javascript angularjs save angularjs-ng-disabled