2011-08-28 32 views
2

我剛剛開始使用OPA,我想解析一個DOM,但我只能通過id獲取元素,例如Dom.get_value(#an_id)。如果我在教程的聊天示例中有一個佈局,該怎麼辦?如何解析OPA中的DOM?

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

如何獲取消息div中的文本?我試過Dom.get_value(Dom.select_class( 「線」)select_class( 「信息」)。),但我得到這個錯誤:

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

第一:

Dom.get_value僅適用於inputtextarea標籤。

對於您的情況,您應該在div上致電Dom.get_text

但是,如果你想獲得的內容,而如果你有一個輸入/ textarea的或不知道,只是使用Dom.get_content

而且,你不能做:

Dom.select_class("line").select_class("message"))

你可以做:

Dom.select_class("message")

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