2

私は問題を抱えています、ここに短い例があります:

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

そして、ボタンをクリックしても何も起こりません...

opaにバグはありますか?

4

2 に答える 2

2

回答の最初の要素: ページの読み込みを高速化するために、Opa の読み込みは最初に HTML を配置し、スクリプト タグ (すべてのクライアント側コードの読み込み) をページの最後まで延期します。通常の使用例では、onclick アクションは 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)

ただし、それでも機能しません。理由はまだわかりません。

于 2011-08-25T09:44:17.940 に答える
1

これは「正常」だと思います.XHTMLを基本的な文字列に変換すると、イベントハンドラーを保持できません...

onclick は文字列にシリアル化されません。

誰か確認できますか?

于 2011-08-24T23:11:00.427 に答える