我刚刚开始使用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 }.
答案 0 :(得分:4)
第一:
Dom.get_value
仅适用于input
或textarea
代码。
在您的情况下,您应该在div
上致电Dom.get_text
。
但是,如果您想获取内容而不想知道是否有输入/ textarea,请使用Dom.get_content
此外,你做不到:
Dom.select_class( “线”)。select_class( “消息”))
你可以这样做:
Dom.select_class( “消息”)
或
Dom.select_raw(“。line&gt; .message”)