フィールドにクリックすると、データベースの最新のデータがフィールドにあることを確認し、フォームフィールドを終了するときにフォームを作成するために使用している次のコードがありますテキスト領域をデータベースに保存し直します。すでに動作しているdisplay()関数には、すでにフォームに他のフィールドがたくさんあります。しかし、これは私がそれを処理する方法を理解しようとしているので、リスト(文字列)です私が作業している最初のデータベースフィールドです。私はこれを実行するとhtmlがすべて正しいように見え、フィールドのイベントも見ることができます。しかし、display_lpで生成されたフィールドはonclickまたはonblurイベントを発生させません。理由はありますか?イベントハンドラが機能しない
display_lp(path) = (
List.mapi(
x, characterlp -> textid = "#edit_content_lp_{x}"
divid = "#show_content_lp_{x}"
<div class="show_content" id={divid} onclick={_ -> edit_lp(path, x) }>
{x+1}:
<textarea class="edit_content" id={textid} cols="20" rows="1" onblur={_ -> save_lp(path,x) } >
{characterlp}
</textarea>
</div>
, /characters[path]/lifepaths)
)
display(path) = (
Resource.styled_page("{path}'s character sheet",["/resources/css.css"],
/* a bunch of other irrelevant html *?
<div class="show_content" id=#show_content_lp> Lifepaths: { display_lp(path) }
</div>
<a href="..">Back to Directory</a>
)
)
違いがわかります。実際には、textidとdividの値から#を取り除きます。それがなぜそのように機能するのか? – Chris
これがOpaか、(調査される)イベントハンドラを無視するウェブブラウザであるかどうかわかりませんが、 – Fred