【发布时间】:2019-02-23 12:36:34
【问题描述】:
我有如下元素:
<li class="someClass">value1<span>value2</span></li>
上面的列表元素是通过vanila js生成的,所以点击事件绑定到它如下:
const list = Array.from(document.querySelectorAll(".someClass"));
list.forEach(ele => ele.addEventListener('click', this.getListValue.bind(this)));
getListValue(element)
{
console.log('output', element.target.innerText)
}
在输出中我在 IE 上得到:
output value1 value2
铬:
output value1
我只需要 value1。有没有办法在给定的场景中获取 li 标签的值?
谢谢!
【问题讨论】:
-
为什么还要从模板中读取元素?
-
@Amadán 我需要元素的价值来做一些进一步的行动。在我的例子中 li 元素是搜索输入的下拉菜单,当用户点击一个 li(即下拉菜单中的一个项目)时,我想获取该值并在下一页显示一些结果。
-
如果你使用 Angular(-JS),那么使用 ng-model 并且不要从 HTML 中读取任何内容。
-
@Justinas 我正在使用 Angular (5.2)。而且我无法添加 [(ngModel)] 作为使用 vanila js 代码创建多个 li。
-
@Simer 你为什么要这么做?创建多个
- 使用 *ngFor!
标签: angular