如何在Elm中创建HTML数据属性?

时间:2015-10-29 17:15:43

标签: elm

我需要使用自定义“data- *”属性标记我的Elm.Http元素,例如:

<tr data-row="1">...</tr>

我尝试了以下内容:

import Html exposing (..)
import Html.Attributes exposing (..)
import Json.Encode as JsEncode

view ... =
  tr [ property "data-row" (JsEncode.string (toString 1)) ]

但这没有任何作用。有人知道吗?

我认为问题是Elm实际上是在设置JavaScript DOM属性,所以我真的想以某种方式调用element.dataset.row =“1”。

背景是我需要为我的事件处理程序向jQuery公开一些数据,因为Elm事件库缺少我需要的一些功能,例如条件化的preventDefault和表单序列化。还有其他方法可以通过DOM提供数据,但data- *属性是迄今为止最直接的。

1 个答案:

答案 0 :(得分:50)

您可以改为使用attribute功能。

view ... =
    tr [ attribute "data-row" "1" ]