htmx.defineExtension('sse-body', {
encodeParameters : function(headers, parameters, elt) {
headers["Content-Type"] = "application/json";
return elt["htmx-internal-data"].sseEvent.data;
}
});
<ol hx-sse="swap on eventName" hx-swap="beforeend">Loading list...</ol>
<body id="thebody" hx-sse="connect /news_updates">
<h1>Receiving Messages:</h1>
<div id="sselist" hx-trigger="sse:new_news" hx-ext="sse-body"
hx-post="/news" hx-target="#nid" hx-swap="beforeend">
<ul id="nid">
</ul>
</div>
</body>
<body id="thebody" hx-sse="connect /news_updates">
<h1>Receiving Messages:</h1>
<ol hx-trigger="sse:new_news" hx-get="/news" hx-swap="beforeend">
loading list ...
</ol>
</body>
<div _="on click add .clickedClass">...</div>
<div hx-trigger="removeMe" hx-delete="/my/url" _"on click add .fadeMe then wait 500ms then trigger removeMe">
Remove Me
</div>