Disable a modal trigger

Hi there! Despite the :disabled attribute, the modal is still being triggered. How can I disable it completely?
<x-filament::modal id="modalTest">
<x-slot name="trigger">
<x-filament::button :disabled="true">I'm disabled</x-filament::button>
</x-slot>
Hello, I'm a modal
</x-filament::modal>
<x-filament::modal id="modalTest">
<x-slot name="trigger">
<x-filament::button :disabled="true">I'm disabled</x-filament::button>
</x-slot>
Hello, I'm a modal
</x-filament::modal>
1 Reply
charlie
charlieOP2w ago
I think it could easily be fixed by doing this quick change in vendor/filament/support/resources/views/components/modal/index.blade.php on line 108: Instead of
@if ($trigger)
<div
x-on:click="open"
{{ $trigger->attributes->class(['fi-modal-trigger flex cursor-pointer']) }}
>
{{ $trigger }}
</div>
@endif
@if ($trigger)
<div
x-on:click="open"
{{ $trigger->attributes->class(['fi-modal-trigger flex cursor-pointer']) }}
>
{{ $trigger }}
</div>
@endif
Do this:
@if ($trigger)
<div
@if(!$trigger->attributes['disabled'] ?? false)
x-on:click="open"
@endif
{{ $trigger->attributes->class(['fi-modal-trigger flex cursor-pointer']) }}
>
{{ $trigger }}
</div>
@endif
@if ($trigger)
<div
@if(!$trigger->attributes['disabled'] ?? false)
x-on:click="open"
@endif
{{ $trigger->attributes->class(['fi-modal-trigger flex cursor-pointer']) }}
>
{{ $trigger }}
</div>
@endif
Then in the view:
<x-slot name="trigger" :disabled="true">
<x-slot name="trigger" :disabled="true">
Should I propose a PR? The PR is merged, release will come!

Did you find this page helpful?