У меня есть строка с html-разметкой, и я хочу создать из нее элемент Doc следующим образом:
Doc.FromHtm "<div><p>.....</p>.....</div>"
Как я понимаю, сейчас это невозможно. Ок, что не получается аккуратно зашить, попробовал грубо прибить с помощью jquery:
JQuery.JQuery.Of( "." + class'name ).First().Html(html'content)
Но чтобы вызвать этот код, мне нужно указать обработчик событий для элемента Doc. Но это не реализовано в UI.Next. Я пытался отслеживать изменения модели с заданным классом CSS асинхронно:
let inbox'post'after'render = MailboxProcessor.Start(fun agent ->
let rec loop (ids'contents : Map<int,string>) : Async<unit> = async {
// try to recive event with new portion of data
let! new'ids'contents = agent.TryReceive 100
// calculate the state of the agent
let ids'contents =
// merge Map's
( match new'ids'contents with
| None -> ids'contents
| Some (new'ids'contents) ->
new'ids'contents @ (Map.toList ids'contents)
|> Map.ofList )
|> Map.filter( fun id content ->
// calculate CSS class name
let class'name = post'text'view'class'name id
// change it's contents of html
JQuery.JQuery.Of( "." + class'name ).First().Html(content).Size() = 0)
// accept the state of the agent
return! loop ids'contents }
loop Map.empty )
а затем, например, для одного элемента:
inbox'post'after'render.Post [id, content]
Но это слишком сложно, ненадежно и не очень работает. Подскажите, пожалуйста, как решить проблему, если это возможно. Заранее спасибо!