Elm onInput事件处理程序不适用于contenteditable元素

我想在有人修改可编辑表格单元格时更新模型。

onInput函数在input元素上似乎运行良好,但是在带有td的{​​{1}}元素上,永远不会调用处理函数。 为什么? 那我应该如何检测可编辑表格单元中的内容更改?

请参见以下代码中的第74和78行 (我只是以Elm指南中的“按钮”示例为例,并在其中添加了一些东西,使它们变得最小但可运行):

contenteditable="true"
yuanyuanlizhu 回答:Elm onInput事件处理程序不适用于contenteditable元素

onInput将从target.value获取字符串,该字符串对于contenteditable input事件不存在。

例如,您可能想抢innerText

onContentEditableInput : (String -> msg) -> Attribute msg
onContentEditableInput tagger =
    Html.Events.stopPropagationOn "input"
        (Json.map (\x -> ( x,True )) (Json.map tagger innerText))

innerText : Json.Decoder String
innerText =
  Json.at ["target","innerText"] Json.string
本文链接:https://www.f2er.com/3067741.html

大家都在问