opa - xhtml.of_string_unsafe 禁用 onclick

标签 opa

我有一个问题,这是一个简短的示例:

Xhtml.of_string_unsafe(Xhtml.to_string(<button onclick={_->jlog("coucou")}>bouton</button>))

当我点击按钮时,什么也没有发生......

opa有bug吗?

最佳答案

答案的第一个元素:为了加快页面加载速度,Opa 首先加载 HTML 并推迟脚本标记(加载所有客户端代码)直到页面末尾。在正常使用情况下,onclick 操作会被委托(delegate),直到 JS 代码加载之后。这在这里不可能发生,并且您的示例实际上显示了 JS 错误:它尝试使用尚未加载的 jQuery(它作为 all.js 文件的一部分加载)。

相反,如果您动态插入这个不安全的 XHTML,那么在加载 JS 之后,您就不会收到错误。示例代码为:

page() = 
  btn = Xhtml.of_string_unsafe(Xhtml.to_string(<button onclick={_ ->jlog("coucou")}>bouton</button>))
  <span id="toto" onready={_ -> Dom.transform([#toto <- btn])} />
server = one_page_server("Test", page)

但是,还是不行。我还不知道为什么。

关于opa - xhtml.of_string_unsafe 禁用 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7179956/

相关文章:

apache - 在端口 80 上运行 Opa 服务器

forms - opa : paypal and IPN

opa - Opa 如何处理客户端和服务器之间的通信?

opa - 为什么 Opa 语言中需要 'do'?

html - 我可以在 Opa 中使用 XHTML 1.1 以外的东西吗?

xml - 如何用 Opa 解析 XML?

OPA 给出错误 "rego_parse_error: var cannot be used for rule name"

css - opa 文本区域宽度