如何从html元素中检索文本?

时间:2017-06-23 20:47:36

标签: elm

如何从按钮获取标题?

decorateOn : String -> Html Msg -> Html Msg
decorateOn selectedCaption button =

    if button.text == selectedCaption then
        button [ class "selectedNavigationButton" ] []
    else
        button [ class "navigationButton" ] []
  

button没有名为text的字段。 - button的类型   是:

Html Home.Msg
     

其中不包含名为text的字段。

注意,我意识到"按钮"实际上是Html Msg。

2 个答案:

答案 0 :(得分:3)

您无法通过涉及端口和JavaScript的黑客攻击从按钮获取文本。而且,你无法从榆树内部检查任何有关Elm Virtual DOM的内容。

相反,请尝试重构您的应用,以便您可以从模型中获取信息。

答案 1 :(得分:3)

你需要改变思路。您需要在设置类的同一阶段设置文本,而不是查看按钮文本中的内容。所以这给你一些像

decorateOn : String -> Html Msg -> Html Msg
decorateOn selectedCaption button =    
    if selectedCaption == "the selected value" then
        button [ class "selectedNavigationButton" ] [text selectedCaption ]
    else
        button [ class "navigationButton" ] [text selectedCaption]