مجموعة أزرار الاختيار · الحدث
الاشتراك في تغييرات القيمة من LiveView أو العميل.
عند تغيير القيمة (الخادم)
Pick
| Time | Source | Value |
|---|---|---|
|
No event yet. Interact with the components to receive new events |
||
<.radio_group
name="rg-events-server"
class="radio-group"
items={[
%{value: "a", label: "Option A"},
%{value: "b", label: "Option B"}
]}
on_value_change="radio_group_changed"
>
<:label>Pick</:label>
<:item_control><.heroicon name="hero-check" class="data-checked" /></:item_control>
</.radio_group>
def handle_event("radio_group_changed", %{"id" => id, "value" => value} = params, socket) do
IO.inspect(params, label: "radio_group_changed")
{:noreply, socket}
end
عند تغيير القيمة (العميل)
Pick
| Time | Source | Value |
|---|---|---|
|
No event yet. Interact with the components to receive new events |
||
<.radio_group
name="rg-events-client"
class="radio-group"
items={[
%{value: "a", label: "Option A"},
%{value: "b", label: "Option B"}
]}
on_value_change_client="radio-group-changed"
>
<:label>Pick</:label>
<:item_control><.heroicon name="hero-check" class="data-checked" /></:item_control>
</.radio_group>
const el = document.getElementById("radio-group-events-client");
el?.addEventListener("radio-group-changed", (event) => console.log(event.detail));
const el = document.getElementById("radio-group-events-client");
el?.addEventListener("radio-group-changed", (event: Event) =>
console.log((event as CustomEvent<unknown>).detail)
);