我正在努力弄清楚如何根据布尔变量的值禁用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的值,但它是false,但我仍然可以点击addParticipants的(+)符号。而且,我不知道如果我设法禁用点击,我将显示指示用户首先保存主记录的消息,然后添加参与者将是可能的。
如果有人可以提供一些帮助来解决这个问题,那将非常感激。
谢谢。
答案 0 :(得分:0)
要禁用您可以执行的链接
WHERE MATCH(s.tags) AGAINST (+'keyword1 keyword2 ...' IN BOOLEAN MODE)
但是在控制器中有一个方法,比如
更好<a ng-click="hasID && datagrid.add(datagrid)">
<i class="fa fa-fw fa-plus"></i>
</a>