如何在 HTMX 请求中包含 contenteditable 元素的内容?
How do I include the contents of a contenteditable element in a HTMX request?
我想 post contenteditable field/div 的内容每当它发生变化时。 hx-trigger="change"
没有触发,但是用hx-trigger="blur"
就可以了。如何在请求中提交contenteditable div的值?
<div id='parent-div'>
<div contenteditable='true'
hx-post="/update_db"
hx-trigger="blur"
hx-target="#parent-div"
hx-swap="outerHTML">
Hello, I am a content editable field
</div>
</div>
我认为 htmx 不支持提交开箱即用的 contenteditable 值。您可能需要将 contenteditable 中的内容文本镜像到隐藏输入并将 hx
属性移动到父级 div.
你可以使用 https://alpinejs.dev/ or htmx's companion https://hyperscript.org/
使用 hyperscript,你可以用这样的方式来完成:
<div id='parent-div'
hx-post="/update_db"
hx-trigger="blur"
hx-target="#parent-div"
hx-swap="outerHTML">
<div id="editordiv" contenteditable='true'>
Hello, I am a content editable field
</div>
<input type="hidden" name="editor" _="on keyup from #editordiv put its innerHTML into me" />
</div>
我从 htmx Discord 中找到了一个旧参考,它提供了另一种方法:
<form hx-post="/whatever"
hx-vals="javascript: editable:htmx.find('#myEditable').innerHTML"> ...
我想 post contenteditable field/div 的内容每当它发生变化时。 hx-trigger="change"
没有触发,但是用hx-trigger="blur"
就可以了。如何在请求中提交contenteditable div的值?
<div id='parent-div'>
<div contenteditable='true'
hx-post="/update_db"
hx-trigger="blur"
hx-target="#parent-div"
hx-swap="outerHTML">
Hello, I am a content editable field
</div>
</div>
我认为 htmx 不支持提交开箱即用的 contenteditable 值。您可能需要将 contenteditable 中的内容文本镜像到隐藏输入并将 hx
属性移动到父级 div.
你可以使用 https://alpinejs.dev/ or htmx's companion https://hyperscript.org/
使用 hyperscript,你可以用这样的方式来完成:
<div id='parent-div'
hx-post="/update_db"
hx-trigger="blur"
hx-target="#parent-div"
hx-swap="outerHTML">
<div id="editordiv" contenteditable='true'>
Hello, I am a content editable field
</div>
<input type="hidden" name="editor" _="on keyup from #editordiv put its innerHTML into me" />
</div>
我从 htmx Discord 中找到了一个旧参考,它提供了另一种方法:
<form hx-post="/whatever"
hx-vals="javascript: editable:htmx.find('#myEditable').innerHTML"> ...