11
我有一个<select>
HTML元素有3个选项和一个<p>
元素。在<p>
元素中,我想在<select>
中打印当前选定项目的索引。例如。如果我选择第一个选项,则应打印0,如果选择第二个选项,则应打印1,依此类推。我如何从最小代码开始,如下所示?如何在Elm中打印所选选项的索引?
import Html as H exposing (Html)
import Maybe
import Signal as S exposing (Address, (<~))
type alias Model = { selected : Maybe Int }
model = { selected = Nothing }
type Action = NoOp | Select Int
update action model =
case action of
NoOp -> model
Select n -> { model | selected <- Just n }
view address model =
H.div []
[ H.select [] [ H.option [] [ H.text "0" ]
, H.option [] [ H.text "1" ]
, H.option [] [ H.text "2" ]
]
, H.p [] [ H.text <| Maybe.withDefault ""
<| Maybe.map toString model.selected ]
]
actions = Signal.mailbox NoOp
main = view actions.address <~ S.foldp update model actions.signal
,你可以没有削减? :) –
软件包的缩写名称。这个例子对我有很大的帮助,但是我不得不在文本编辑器中复制粘贴它,并在我能够理解之前将JD更改为Json.Decode等。 –
如果你有时间的话,看到elm-0.17更新会很高兴。如果我觉得我对选择选项的理解足够好,我会尽力去做。 – MichaelJones