© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
FilamentF
Filament•3w ago•
8 replies
Tonkawuck

Widget Action not opening modal

Actions✅ Solved4️⃣v4
I am rendering an action within a widget, and intending for clicking the action to open a form in a modal. I have tried removing parts of my class to try to find what may be affecting it, but haven't had success. I have also tried creating a basic Livewire (non-widget) component instead, but that also has not worked.

Here is my widget code (excl use statements)
<?php

namespace App\Livewire\Registry;

class FindRegistry extends Widget implements HasSchemas, HasActions
{
    use InteractsWithSchemas,
        InteractsWithActions;

    protected string $view = 'livewire.registry.find-registry';
    public ?int $registryId = null;

    public function mount(): void
    {
        $this->registryId = auth()->user()?->preferred_registry_id;
    }

    public function findRegistryAction(): Action
    {
        $label = is_null($this->registryId) ? 'Find a registry' : 'Modify registry';

        return Action::make('find_registry')
            ->label($label)
            ->icon(Heroicon::PencilSquare)
            ->iconPosition(IconPosition::After)
            ->link()
            ->schema([
                TextInput::make('geocode')
                    ->label('Search via postal code, address, or city')
                    ->suffixAction(
                        Action::make('use_current_location')
                            ->label('Use current location')
                            ->icon(Heroicon::MapPin)
                            ->iconPosition(IconPosition::After),
                    )
            ]);
    }
}
<?php

namespace App\Livewire\Registry;

class FindRegistry extends Widget implements HasSchemas, HasActions
{
    use InteractsWithSchemas,
        InteractsWithActions;

    protected string $view = 'livewire.registry.find-registry';
    public ?int $registryId = null;

    public function mount(): void
    {
        $this->registryId = auth()->user()?->preferred_registry_id;
    }

    public function findRegistryAction(): Action
    {
        $label = is_null($this->registryId) ? 'Find a registry' : 'Modify registry';

        return Action::make('find_registry')
            ->label($label)
            ->icon(Heroicon::PencilSquare)
            ->iconPosition(IconPosition::After)
            ->link()
            ->schema([
                TextInput::make('geocode')
                    ->label('Search via postal code, address, or city')
                    ->suffixAction(
                        Action::make('use_current_location')
                            ->label('Use current location')
                            ->icon(Heroicon::MapPin)
                            ->iconPosition(IconPosition::After),
                    )
            ]);
    }
}
Solution
I think your naming is off.

Action::make(‘findRegistry’)

and in the view:
$this->findRegistry
Jump to solution
Filament banner
FilamentJoin
A powerful open source UI framework for Laravel • Build and ship admin panels & apps fast with Livewire
20,307Members
Resources
Was this page helpful?

Similar Threads

Recent Announcements

Similar Threads

Action modal not opening
FilamentFFilament / ❓┊help
3y ago
Adding action to widget, modals not opening
FilamentFFilament / ❓┊help
3y ago
Widget with Modal Action
FilamentFFilament / ❓┊help
3w ago
Custom action modal on widget?
FilamentFFilament / ❓┊help
3w ago