3

我正在尝试this从使用 scalatags 创建的事件处理程序中访问当前 () 元素的文本。这是我尝试过的:

val onChange = {(e: HTMLElement) =>
  number() = e.textContent.toInt
}: js.ThisFunction

input(`type`:="number", onchange := onChange).render

当我调试上面的代码时,没有任何东西被传递到onChange函数中。具体来说,如果我把它放到函数体中: js.Dynamic.global.alert(JSON.stringify(e)),它会打印{}. 另外,我收到一个e.textContent空错误。如何让它传入 javascriptthis元素?

4

1 回答 1

3

我对scala.js gitter 做了一些澄清,事实证明你可以像这样从闭包中访问元素:

val inputElem = input(`type`:="number").render
inputElem.onchange = {(e: Event) =>
  number() = inputElem.value.toInt
}
于 2015-06-13T17:45:17.917 回答