AngularJs ng-click $event 将子元素作为目标传递

2024-01-19

对于每个td表中的元素我有一个附加的 ng-click。以下是每个表格单元格的(简化的)html:

<td ng-click="cellClicked($event)">
    <span ng-if="!cellEdit">{{event.eventName}}</span>
    <input type="text" ng-if="cellEdit" ng-model="event.eventName">
</td>

我的(简化的)ng-click 函数:

scope.cellClicked = function (event) {
  rowScope.cellEdit = true
  angular.element(event.target).find('input').focus()
}

我的目标是:

  1. 用户单击表格单元格
  2. 单元格更改为“编辑模式”
  3. 将重点放在input元素位于td.

现在只要用户点击就可以工作位于 td 元素内,但不在 span 元素上:

console.log(angular.element(event.target)) #--> [td...] (as desired)

但是,如果用户单击 td 中的 span 元素:

console.log(angular.element(event.target)) #--> [span...]

在此用例中,分配焦点不起作用。我希望访问的父元素span做类似的事情:

angular.element(event.target.closest('td'))

or

angular.element(event.target.parentNode)

但是当元素通过 $event 传递并访问时,就会出现没有父上下文的情况。

我怎样才能:

  • 防止点击span元素触发td的 ng-click
  • 单击时span元素通过它的 html 父元素

改变:

angular.element(event.target)

to:

angular.element(event.currentTarget)

解决了我的问题。

在我看来使用事件.currentTarget http://www.w3schools.com/jsref/event_currenttarget.asp优先于事件目标 http://www.w3schools.com/jsref/event_target.asp在大多数使用情况下。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJs ng-click $event 将子元素作为目标传递 的相关文章

随机推荐

  • 如何使用 Spring Hibernate 配置包级别 @TypeDefs

    我需要配置 TypeDefs 以在包级别使用自定义 Type 当我按照以下方式配置它时 我收到 ClassNotFoundException 但是当我将 TypeDefs 放在类级别时 它工作正常 我发现了类似的堆栈溢出帖子 https s
  • 在recyclerview末尾添加进度条

    在我的应用程序中 我发送了一个齐射请求 该请求逐一获取列表项 而不是一次全部获取 我想在获取数据时在回收器视图的末尾实现一个进度条 updateAdapter 类更新适配器 我正在考虑使进度条在 recyclerview 滚动侦听器中可见
  • Unix 套接字,SOCK_SEQPACKET 与 SOCK_DGRAM

    似乎至少有 3 种不同的本地 unix 套接字类型 AF UNIX SOCK STREAM SOCK DGRAM and SOCK SEQPACKET 虽然我知道一个SOCK STREAM为您提供双向字节流 如 TCP 或双向管道 另外两个
  • 访问WPF用户控件值

    我在 WPF 用户控件中有 2 个文本框 在 WPF 窗体上有两个按钮 如何访问我使用 WPF 用户控件的主窗体的按钮单击事件上的这些文本框值 首先 请记住WPF 不是 WinForms 理论上你应该数据绑定您的文本框到属性 然后更改属性的
  • 字符串中的 ImageSource 不起作用?

    我的项目文件夹中有一堆 tif 图像 我也将其添加到位于 Templates Team Logos 的文件夹中的 Visual Studio 项目中 现在如果我设置一个图像源说
  • 如何获取 bufferedImage 的缩放实例

    我想获得缓冲图像的缩放实例 我这样做了 public void analyzePosition BufferedImage img int x int y img BufferedImage img getScaledInstance ge
  • PHP 相当于 Ruby 的 @instance_variable?

    我想知道是否有一种更短 更好或更干净的方法来在 PHP 中分配和使用类变量 然后通过 this gt instance variable class Bar internal variables var foo Hello World pu
  • 当内存中的类对象已经是二进制(C/C++)时为什么要进行序列化?

    我的猜测是 数据分散在物理内存中 即使类对象的数据在虚拟内存中也是连续的 因此为了正确发送数据 需要重新组装数据 并且能够通过网络发送 一附加步骤是将主机字节顺序转换为网络字节顺序 这是对的吗 正确的序列化可用于将数据发送到任意系统 这些系
  • 在 Laravel Backpack 中 - 查看详细信息和 XLS 下载中的列数据被截断

    如果列数据大约超过 50 个字符 则该列将被截断为 50 个左右 addColumn 函数有 type gt text 最后有 这既包含在详细信息弹出窗口中 也包含在 XLS 下载中 问题是 可以通过任何配置增加此限制吗 是的你可以 有一个
  • 什么是 ARM Thumb 指令集?

    在 ARM11TechnicalRefManual 第 1 34 节的 Thumb 指令集 下 它说 Thumb指令集是最常用的32位ARM指令的子集 Thumb指令有16位长 并且有相应的32位ARM指令 对处理器模型具有相同的效果 任何
  • WCF 模拟/身份验证

    我已经看过模仿的例子 但仍然有问题 结构的一些细节 ASP net Windows 身份验证WCF 托管在 IIS 中 当前使用允许匿名用户 我想要实现的是允许将经过身份验证的 Windows 登录传递到 WCF 进行访问控制 例如阻止匿名
  • 可视化两个数值数组之间的差异

    我有两个长度相等的数值数组 其中一个数组的元素值始终 gt 第二个数组中对应 相同索引 元素的值 我试图在一张图中可视化 i 相应元素之间的差异 ii 两个数组中对应元素的值 我尝试绘制 CDF 如下所示 import numpy as n
  • 将字符串转换为以逗号分隔的双精度变量(0,07)

    在 C 中 我要读取一个双精度变量 该变量用逗号分隔 0 07 我首先从 Excel 中读取一个字符串 然后尝试将其转换为双精度 string str 0 07 Actually from Excel double number strto
  • FULL OUTER JOIN 将表与 PostgreSQL 合并

    下列的这个帖子 https stackoverflow com q 44562726 2508539当我应用给出的答案时 我仍然遇到问题 Vao Tsun https stackoverflow com users 5315974 vao
  • 来自参数的 Oracle“IN 子句”

    我对 Oracle 非常不熟悉 只是想让它发挥作用 我看过here https stackoverflow com questions 1573877 selecting values from oracle table variable
  • Android:如何在不使用 JDBC、PHP 或任何其他 Web 服务的情况下将数据发送到 MySQL DB? [复制]

    这个问题在这里已经有答案了 我正在开发一个 Android 应用程序来将数据发送到 MySQL DB 我正在使用 Apache 服务器 我知道使用 JDBC PHP 将数据发送到 MySQL DB 现在的挑战是不使用 JDBC 和其他 We
  • CABasicAnimation-animationDidStop 未调用

    我正在制作 CABasicAnimation 问题是animationDidStop 委托方法没有被调用 我不知道为什么 但希望有人知道 这是我的动画 CABasicAnimation theAnimation theAnimation C
  • 如何一次分配多个图例标签?

    我有以下数据集 x 0 1 2 3 4 y 0 1 2 3 4 5 6 7 8 9 9 8 7 6 5 现在我用以下方法绘制它 import matplotlib pyplot as plt plt plot x y 但是 我想用此命令标记
  • 具有隐藏构造函数的抽象类的实例

    我需要创建一个带有隐藏构造函数的抽象类的实例 该类如下所示 public abstract class TestClass hide public TestClass 创建具体类不起作用 因为构造函数不可见 并且通过反射 API 调用构造函
  • AngularJs ng-click $event 将子元素作为目标传递

    对于每个td表中的元素我有一个附加的 ng click 以下是每个表格单元格的 简化的 html td span event eventName span td