Laravel 8: Why Login Blade Does Not Show Javascript Alert

Viewed 455

I'm working on my login.blade.php and I want to show an alert box if user faced an error while filling the form:

<form method="POST" action="{{ route('login') }}">
    @csrf
    <div class="field">
        <span class="fas fa-user"></span>
        <input type="email" name="email" required>
        <label style="right:0;">Email</label>
        @error('email')
            alert('Something went wrong');
        @enderror                   
    </div>
    <div class="field">
        <span class="fas fa-lock"></span>
        <input type="password">
        <label style="right:0;">Password</label>
        @error('email')
            alert('Something went wrong');
        @enderror
    </div>
    <button>Login</button>
</form>

So as you can I put the alert() if user faced any error with email or password, but the problem is it does not show the pop up message!

I mean it just prints it as text next to input.

So if you know what is wrong here or how can I solve this, please let me know, I would really appreciate any idea from you guys...

2 Answers

i think that's because you forget <script> tag do it like this:

@error('email')
    <script>
        alert('Something went wrong');
    </script>
@enderror

It shown just as a text because you use it like text, to make it work you need to declare it like a script, like:

@error('email')
   <script type="text/javascript">
      alert('Something went wrong');
   </script>
@enderror
Related