2

我刚刚开始使用 OPA,我想解析一个 DOM,但我只能通过 id 获取元素,Dom.get_value(#an_id)例如。如果我有一个类似于教程聊天示例中的布局怎么办:

    <div class="line">
      <div class="user">{x.author}:</div>
      <div class="message">{x.text}</div>
    </div>

如何获取消息 div 中的文本?我试过 Dom.get_value(Dom.select_class("line").select_class("message")),但我收到了这个错误:

    Error
    File "chat.opa", line 29, characters 49-62, (29:49-29:62 | 714-727)
    Record expression has type dom but field access expected it to have type
    { select_class: 'a; 'r.a }.
4

1 回答 1

4

第一的 :

Dom.get_value仅适用于inputtextarea标签。

在您的情况下,您应该调用Dom.get_text您的div.

但是,如果您想获取内容而不想知道您是否有输入/文本区域,只需使用Dom.get_content

此外,你不能这样做:

dom.select_class("line").select_class("message"))

你可以做 :

dom.select_class("消息")

或者

Dom.select_raw(".line > .message")

于 2011-08-28T11:08:51.527 回答