bigskysoftware / htmx-extensions

102 stars 30 forks source link

Disable a button while sse connection is active #15

Open gnituy18 opened 3 months ago

gnituy18 commented 3 months ago

I am trying to disable a button while an SSE connection is actively receiving data. The button, when clicked, requests suggestions generated by an AI. It triggers an SSE connection by retrieving a div element with an hx-ext="sse" attribute.

The hx-disabled-elt attribute does not work for this scenario because the button's action is merely to retrieve the div that initiates the SSE connection.

Is there a proper way to disable the button while the SSE connection is active? Alternatively, is it possible to implement something like an sse-disable-elt attribute?

I am currently using htmx@2.0.0-beta2 and sse@2.1.0.

Telroshan commented 2 weeks ago

Hey, to be honest it seems to be that kind of specific-enough situation for me that you'd want to add a little custom JS snippet to handle it. Like adding the disabled attribute on the button when swapping in your SSE element, and removing it on htmx:beforeCleanupElement