2015-10-29 10 views
26

私は "*データ - " カスタムと私のElm.Http要素をタグ付けする必要があるが、例えば、属性:ElmでHTMLデータ属性を作成する方法は?

<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"を呼びたいと思っています。

バックグラウンドでは、Elmイベントライブラリに条件付きのpreventDefaultやフォームのシリアル化など必要な機能がないため、イベントハンドラのjQueryにデータを公開する必要があります。 DOMを介してデータを提供する他の方法もありますが、data- *属性ははるかに簡単です。

答えて

38

代わりにattribute関数を使用できます。

view ... = 
    tr [ attribute "data-row" "1" ] 
関連する問題